有这样的一个需求,RadioGroup包含若干个RadioButton。默认每个RadioButton都有点击变色的效果。但是指定某一个RadioButton没有点击变色的效果,但是依旧能接收到点击事件。先看下布局
bet_type_text_color文件
home_bet_type_bg_selector文件
home_icon_today_bg和home_icon_roll_ball_bg是两张图片
代码中的实现
sportRollBallCountTv.setClickable(false);
sportRollBallCountTv.setOnTouchListener((v, event) -> {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
downTime=System.currentTimeMillis();
break;
case MotionEvent.ACTION_UP:
if (System.currentTimeMillis()-downTime<200){
clickListener.onBetTypeViewClick(TYPE_ROLL_BALL);
}
break;
}
return true;
});
sportRollBallCountTv就是ID为home_roll_ball_count_rb的控件。点击运行可以发现,有点击事件但home_roll_ball_count_rb没有改变背景颜色



