Android 代码中动态改变Shape

在布局中,我们经常应用Shape来进行一些布局的优化,但有时候我们需要在代码中来进行修改我们引用的Shape.很简单,代码如下:

 RelativeLayout groupRankLayout = (RelativeLayout) findViewById(R.id.group_rank_layout);
 GradientDrawable mGroupDrawable= (GradientDrawable) groupRankLayout.getBackground();
 /*设置边框颜色和宽度*/
 mGroupDrawable.setStroke(1, getResources().getColor(R.color.bar_select_color));
 /*设置整体背景颜色*/
 mGroupDrawable.setColor(getResources().getColor(R.color.bar_select_color));
 /*设置圆角*/
 mGroupDrawable.setCornerRadius();

怎么样是不是很简单,但这种只能用于background引用于Shape的情况下,像Selector和layer-list文件的时候会出下问题的!

你可能感兴趣的:(安卓工作问题总结)