1、场景:
我需要通过Java代码设置CheckBox的状态和调用其监听的onClick方法。于是我这样做:
checkBox.setChecked(true);
checkBox.performClick();
onClick方法倒是响应了,但是状态却没有改变,check的状态永远都是false,一时找不到什么原因。
2、解决:
后来通过实验发现,原来performClick就相当于你用手点击屏幕触发事件了,也就是说,CheckBox的状态如果是false,调用了performClick后,就相当于你用手点击了CheckBox,当然其状态就变成了true,所以也就不需要setChecked方法了。