我一直在做很多研究,并且找不到我的答案。是否可以在我的drawable文件夹中创建一个带圆边的按钮而不使用形状xml?
我的应用程序有很多按钮,可根据用户分配和触摸的内容更改颜色。这意味着我必须在我的xml中为它的特定颜色创建很多形状(大约有20种颜色)。
或者有没有办法可以轻松更改形状按钮的背景颜色?我的应用程序的一页上有大约45个按钮。
谢谢!
答案 0 :(得分:0)
您可以使用imageView.setColorFilter(Color.RED)函数来更改xml drawable的颜色
这里有一些例子
ImageView redCircle = (ImageView) findViewById(R.id.circle_red_imageview);
ImageView greenCircle = (ImageView) findViewById(R.id.circle_green_imageview);
ImageView blueCircle = (ImageView) findViewById(R.id.circle_blue_imageview);
// we can create the color values in different ways:
redCircle.getDrawable().setColorFilter(Color.RED, PorterDuff.Mode.MULTIPLY );
greenCircle.getDrawable().setColorFilter(0xff00ff00, PorterDuff.Mode.MULTIPLY );
blueCircle.getDrawable().setColorFilter(getResources().getColor(R.color.blue), PorterDuff.Mode.MULTIPLY );