【问题标题】:place an image over a button将图像放在按钮上
【发布时间】:2013-09-26 15:20:01
【问题描述】:

我的主屏幕上有一个按钮。当全局变量更改其状态时,我想在按钮上显示挂锁图像。

在标准按钮上设置图像的最佳方式是什么?我必须将按钮设为 imageButton 还是只需 setBackground...()?

Button signin = (Button)findViewById(R.id.buttonsignin);
               // signin.setBackgroundResource(R.drawable.signin);

                alpha = new AlphaAnimation(0.3F, 0.8F); //Set opacity - Range 0.0 to 1.0
                alpha.setDuration(0); // Set animation duration
                alpha.setFillAfter(true); // Maintaining the effect to the button
                signin.startAnimation(alpha);
                signin.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View v) {

                        .....

                    }
                });

【问题讨论】:

    标签: android button view drawable


    【解决方案1】:

    我认为最好使用按钮,然后在 xml 文件中提供其属性,以便您可以使用诸如按下状态之类的属性。但是如果你给 setBackground="image path" 那么你将无法提供像state_pressed 这样的属性。

    【讨论】:

    • +1 使用选择器,这里有一个完整的例子来说明如何使用 selectors : wp.me/p3V0Ps-t
    【解决方案2】:

    另一种选择是有一个相对布局同时包含一个 imageview 和一个标准按钮,这样按钮可以有文本,同时也可以在 imageview 中显示按钮状态。

    【讨论】:

      【解决方案3】:

      无论是否经常,当我处理可以保存图像的东西时,我什至不使用按钮,我只会使用具有不同状态的 ImageView。但如前所述,使用选择器使 XML 代码的工作变得相当容易,而不必担心自己处理切换;多种方法来达到预期的效果。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-25
        相关资源
        最近更新 更多