android - 如何在android上获取按钮的背景颜色?

标签 android background-color

我想获取按钮的颜色。我无法从返回可绘制对象的 getbackground 函数中获取颜色。我使用 getsolidcolor 返回整数值但它一直是 0(零).. 我不明白问题出在哪里。也许它不是真正的功能..

这是我的安卓代码

            int renk = btn1.getSolidColor();

        if(renk== Color.GREEN)
            Toast.makeText(getApplicationContext(), "green" , 1000).show();
        else if(renk== Color.RED)
            Toast.makeText(getApplicationContext(), "red" , 1000).show();
        else if(renk== Color.YELLOW)
            Toast.makeText(getApplicationContext(), "yellow" , 1000).show();
        else
            Toast.makeText(getApplicationContext(), "unknown", 1000).show();

        btn1.setBackgroundColor(Color.YELLOW);
     renk = btn1.getSolidColor();


        if(renk== Color.GREEN)
            Toast.makeText(getApplicationContext(), "green" , 1000).show();
        else if(renk== Color.RED)
            Toast.makeText(getApplicationContext(), "red" , 1000).show();
        else if(renk== Color.YELLOW)
            Toast.makeText(getApplicationContext(), "yellow" , 1000).show();
        else
            Toast.makeText(getApplicationContext(), "unknown", 1000).show();

即使我将背景设置为黄色,我也只是收到未知的 toast 消息..

最佳答案

给你....

 Button myButton = (Button) findViewById(R.id.takePicture);

 myButton.setBackgroundDrawable(new PaintDrawable(Color.YELLOW));

 PaintDrawable drawable = (PaintDrawable) myButton.getBackground();

 int color = drawable.getPaint().getColor();

关于android - 如何在android上获取按钮的背景颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9832918/

相关文章:

Android Proguard 手动更改包名

android - 如何获取RecyclerView.Adapter中的卡片位置?

colors - 谷歌如何识别文字颜色和背景?

image - 仅在 img 上不透明度而不是其背景

jquery - 为什么背景颜色没有改变?

android - Gitlab Ci gradlew : does not exist and --remove not passed

android - 使用 Android 应用程序将视频从 SD 卡分享到 Facebook

JavaCV FFmpegFrameRecorder 不保存/写入磁盘

Android应用程序布局背景通过布局中的控件显示

javascript 使用按钮更改页面背景颜色