其实Android中shape标签就是用来画矩形、椭圆、圆等图形,但是这些都可以通过代码进行创建,对应的类是:GradientDrawable 具体的实现方式如下:
//这步就相当于创建shape标签
GradientDrawable gradientDrawable = new GradientDrawable();
//指定shape标签的形状,下面指定的是矩形
gradientDrawable.setShape(GradientDrawable.RECTANGLE);
//设置圆角
gradientDrawable.setCornerRadius(radius);
//设置矩形颜色
gradientDrawable.setColor(color);
select标签对应的类是:StateListDrawable,具体的代码实现如下:
//创建select标签,也就是选择器
StateListDrawable stateListDrawable = new StateListDrawable();
//指定所需要的状态,以及这个状态所对应的的Drawable,下面这个状态是按下时的状态
stateListDrawable.addState(new int[]{android.R.attr.state_pressed},pressedDrawable);
//这个是没哟状态,也就是正常是的状态,以及图片
stateListDrawable.addState(new int[]{},normalDrawable);