有些时候一些需求要求颜色动态改变,而且这个控件又是圆角,而设置了backgroundcolor,这个圆角失效了,这就很尴尬,找了很久找到一个方法。
1.
GradientDrawable gradientDrawable = new GradientDrawable();
gradientDrawable.setShape(GradientDrawable.RECTANGLE);//形状
gradientDrawable.setCornerRadius(5f);//设置圆角Radius
gradientDrawable.setColor(getResources().getColor(R.color.gray999));//颜色
rlTitleBar.setBackground(gradientDrawable);//设置为background
2.
其实有简单是方法是这就写一个自定义的布局为圆角的就好了,这样的网上很多代码,但是很有可能存在泄漏问题,所以方法1比较好用。