在项目中使用到了ToggleButton控件,但是在调用其setChecked方法并且将其设置为true的时候,会自动触发
OnCheckedChangeListener监听器,为了区分是人为点击的还是我们调用
setChecked方法之后自动触发的,需要在代码中加入判断,如下:
toggleButton.set OnCheckedChangeListener{
@Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
if(!buttonView.isPressed())
return; //加这一条,否则当我setChecked()时会触发此listener
... ...
}
}
这样子我们就可以防止初始化的时候莫名其妙的自动调用其监听器的方法。