实习的公司的项目,一个智能家居设备可以使用手机app控制设备的升降,有三个升降控制按钮,上升,停止,下降
但是原来的版本里没有设置按钮的点击事件,以至于出现在设备上升时点击下降按钮,在按钮被点击后下降按钮会闪烁一下,然后显示停止,然后才显示下降。虽然我是感觉没啥毛病,但还是要改
原来是使用RadioGroup实现的三个按钮,只设置了选中效果没有设置点击效果
if(st == AirerDevice.MOTO_STATUS_UP) {
rgControl.check(R.id.rb_up);
subText = getString(R.string.status_up);
}elseif(st == AirerDevice.MOTO_STATUS_DOWN) {
rgControl.check(R.id.rb_down);
subText = getString(R.string.status_down);
}elseif(st == AirerDevice.MOTO_STATUS_STOP) {
rgControl.check(R.id.rb_stop);
subText = getString(R.string.status_stop);
}
然后把按钮修改成最普通的Button,添加了点击事件与选中事件
if(st == AirerDevice.MOTO_STATUS_UP) {
// rgControl.check(R.id.rb_up);
// up.setBackgroundResource(R.drawable.up_select_zj);
up.setSelected(true);
up.setPressed(true);
down.setSelected(false);
stop.setSelected(false);
subText = getString(R.string.status_up);
}else if(st == AirerDevice.MOTO_STATUS_DOWN) {
// rgControl.check(R.id.rb_down);
// down.setBackgroundResource(R.drawable.down_select_zj);
// down.setBackgroundResource(R.drawable.zj_down_selector);
down.setSelected(true);
down.setPressed(true);
up.setSelected(false);
stop.setSelected(false);
subText = getString(R.string.status_down);
}else if(st == AirerDevice.MOTO_STATUS_STOP) {
// rgControl.check(R.id.rb_stop);
// stop.setBackgroundResource(R.drawable.stop_select_zj);
// stop.setBackgroundResource(R.drawable.zj_stop_selector);
stop.setSelected(true);
stop.setPressed(true);
up.setSelected(false);
down.setSelected(false);
subText = getString(R.string.status_stop);
}
虽然愚蠢但是完成了,接下来就是把重复代码封装一下了,很基础的问题
网友评论