java代码代替xml实现图片
生活随笔
收集整理的這篇文章主要介紹了
java代码代替xml实现图片
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1.使用StateListDrawable替換selector
public static StateListDrawable getSelector(Drawable normalDrawable, Drawable pressDrawable) {StateListDrawable stateListDrawable = new StateListDrawable();//給當(dāng)前的顏色選擇器添加選中圖片指向狀態(tài),未選中圖片指向狀態(tài)stateListDrawable.addState(new int[]{android.R.attr.state_enabled, android.R.attr.state_pressed}, pressDrawable);stateListDrawable.addState(new int[]{android.R.attr.state_enabled}, normalDrawable);//設(shè)置默認(rèn)狀態(tài)stateListDrawable.addState(new int[]{}, normalDrawable);return stateListDrawable; }默認(rèn)不好使需要在使用的對象設(shè)置為可點(diǎn)擊的;有兩種方法:
方法1
tv.setClickable(true);方法2:
tv.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {UIUtils.toast(tv.getText().toString(),false);}});?
2.使用GradientDrawable替換shape
public static Drawable getDrawable(int rgb,float radius){GradientDrawable gradientDrawable = new GradientDrawable();gradientDrawable.setColor(rgb); //填充顏色gradientDrawable.setGradientType(GradientDrawable.RECTANGLE); //shape矩形gradientDrawable.setCornerRadius(radius); //四周圓角半徑gradientDrawable.setStroke(UIUtils.dp2px(1), rgb); //邊框厚度與顏色return gradientDrawable; }
轉(zhuǎn)載于:https://www.cnblogs.com/ganchuanpu/p/5989154.html
總結(jié)
以上是生活随笔為你收集整理的java代码代替xml实现图片的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 寻找下一款Prisma APP:深度学习
- 下一篇: 基于移动端Reactive Native