android studio中每个圆圈按钮的个别颜色

时间:2018-05-24 04:18:46

标签: android

我正在努力让这个工作在这里...多个彩色圆圈按钮,没有8个XML文件。

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <corners android:radius="1000dp" />
    <solid android:color="#41ba7a" />
    <stroke
        android:width="2dip"
        android:color="#03ae3c" />
    <padding
        android:bottom="4dp"
        android:left="4dp"
        android:right="4dp"
        android:top="4dp" />
</shape>

这是我制作圆形按钮的工作代码。但是,我必须要问,如果我想创建许多不同颜色的圆形按钮,我是否需要为每种新颜色添加新的XML?或者有办法解决这个问题。谢谢!

1 个答案:

答案 0 :(得分:0)

您可以通过编程方式实现此选项

 Button button2 findViewById(R.id.button2);
 button2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            GradientDrawable bgShape = (GradientDrawable) button2.getBackground();
            bgShape.setColor(ContextCompat.getColor(CONTEXT, R.color.colorPrimaryDark));
        }
    });