Android Drawable工具类,
16lz
2021-01-23
创建随机变色的背景
public class DrawableUtil { /** * 创建随机背景的drawable * @return */ public static GradientDrawable createDrawable(){ GradientDrawable drawable = new GradientDrawable(); drawable.setCornerRadius(Util.px2dip(5)); Random random = new Random(); int red = random.nextInt(200) + 20; int green = random.nextInt(200) + 20; int blue = random.nextInt(200) + 20; int color = Color.rgb(red, green, blue); drawable.setColor(color); return drawable; }/** * 使用代码实现状态选择器 * @param press * @param normal * @return */ public static StateListDrawable createStateDrawable(Drawable press, Drawable normal){ StateListDrawable drawable = new StateListDrawable(); //按下 drawable.addState(new int[]{android.R.attr.state_pressed}, press); //正常 drawable.addState(new int[]{}, normal); return drawable; }}
//使用方法
TextView tv = new TextView(this);GradientDrawable pressDrawable = DrawableUtil.createDrawable(0xffcecece);GradientDrawable randomDrawable = DrawableUtil.createRandomDrawable();StateListDrawable stateListDrawable = DrawableUtil.createStateDrawable(pressDrawable, randomDrawable);textView.setBackgroundDrawable(stateListDrawable);
更多相关文章
- Android 4.x上适配设置DialogFragment背景透明--可拓展实现悬浮
- Android NDK 工具链的使用方法(Standalone Toolchain)
- 设置android的布局文件的背景颜色为黑色
- Android设置桌面背景图片的方法
- Android: VideoView做背景仿常见APP登录动态页面
- android Timer使用方法
- android > layout > background 背景图片重复
- Android背景设置
- android 按钮 背景 文字 自定义