CircularImageView https://github.com/Pkmmte/CircularImageView在设置图像位图时效果很好......
circularImageView.setImageBitmap(bitmap);
但是,有时我只想设置纯色而不是位图。如果我这样做,
circularImageView.setBackgroundResource(R.color.blue);
设置了视图的颜色,但图像永远不会变成圆形,因此它会填满整个矩形视图。我假设getDrawable()
返回null,因此它无法实际操作视图。有人遇到过这个问题或者有什么建议吗?
编辑:
我能做到这一点,但似乎有点脆弱:
Bitmap image = Bitmap.createBitmap(50, 50, Bitmap.Config.ARGB_8888);
image.eraseColor(android.graphics.Color.GREEN);
circularImageView.setImageBitmap(image);
答案 0 :(得分:2)
您应该致电circularImageView.setImageResource(R.color.blue)
。
您编写的代码设置了视图的背景,而不是内容图像。查看github上的代码,此视图将仅将内容图像剪切到圆圈 - 它根本不会影响背景。
答案 1 :(得分:1)
试试ColorDrawable
;
int decode = Integer.decode("FF6666");
ColorDrawable colorDrawable = new ColorDrawable(decode);