图像按钮可见性问题!安卓

Posted

技术标签:

【中文标题】图像按钮可见性问题!安卓【英文标题】:Problem with Image Button visibility! Android 【发布时间】:2011-10-21 01:05:53 【问题描述】:

我有一个图像按钮。我让它不可见。但是 onClick 事件没有被触发,这使得按钮可见。该按钮最初应该可见 5 秒,然后变为不可见,然后单击此处再次可见。

private ImageButton nextbutton;
    @Override
    protected void onCreate( Bundle savedInstanceState )
    
        super.onCreate( savedInstanceState );
        setContentView( R.layout.first );
        nextbutton = ((ImageButton)findViewById( R.id.NextButton ));
        nextbutton.setVisibility(View.INVISIBLE);
        nextbutton.setOnClickListener( new OnClickListener()
        
            @Override
            public void onClick( View v )
            
                nextbutton.setVisibility(View.VISIBLE);
                startActivity( new Intent( FirstActivity.this, SecondActivity.class ) );
            
        );
    

【问题讨论】:

【参考方案1】:

您正在尝试单击一个不可见的按钮?尝试使用带有空白可绘制对象的可见按钮,即没有背景或 src 属性。

当您单击它时,通过插入所需的可绘制对象来动态更改源属性。

这肯定会使其可点击。

【讨论】:

如果您不设置 src 或背景,我认为您的按钮最终会变成 0 x 0 大小。通过使用我想要的透明大小的 png,我得到了类似的东西。然后我将它设置为我的 ImageButtons 背景。 手动设置大小,包裹内容不起作用,但match_parent会,也应该设置自己的dip值 我对此进行了进一步的思考,是的,使用带有 alpha 的 png 将加倍保证它有效。【参考方案2】:

当您将 ImageButton 设为不可见时,您将如何单击不可见的 ImageButton。

【讨论】:

onClick 或 onTouch 应该使按钮可见 如果按钮不可见,则不能执行任何 onClick 或 onTouch 事件。能否详细说明为什么要采用这种方法? 当您启动应用程序时,这些按钮会在 5 秒内可见,然后变为不可见,因此人们会知道屏幕上有按钮。例如,如果我有一个 MapActivity 正在运行,则该按钮将成为障碍。所以我想让它不可见。它应该在触摸时再次可见,以便触发另一个活动。 那是错误的方法...为了实现您的目标,您可以使用菜单,也可以使用非常小的图像来显示屏幕上不会打扰您的图像.....

以上是关于图像按钮可见性问题!安卓的主要内容,如果未能解决你的问题,请参考以下文章

Android 中的可见性消失

安卓 11 |地图导航的包可见性更改

如果 MutableList 为空,如何更改 TextView 的可见性? (安卓/科特林)

如何将图像视图的可见性设置为 Spinner 所选项目的可见性

DataGrid中按钮的可见性[重复]

无法将XAML按钮可见性与C#视图模型专用可见性变量绑定