一.第一种方式:
/**
* 用java代码的方式动态生成状态选择器
*/
public static Drawable CreatPressedSelector(Context context,int pressed, int normal) {
StateListDrawable drawable = new StateListDrawable();
drawable.addState(new int[]{android.R.attr.state_pressed}, ContextCompat.getDrawable(context,pressed));// 状态 , 设置按下的图片
drawable.addState(new int[]{}, ContextCompat.getDrawable(context,normal));//默认状态,默认状态下的图片
//根据SDK版本设置状态选择器过度动画/渐变选择器/渐变动画
if (Build.VERSION.SDK_INT > 10) {
drawable.setEnterFadeDuration(500);
drawable.setExitFadeDuration(500);
}
return drawable;
}
二.第二种方式
监听按钮touch事件