如图,必现,版本2.0.8
checkBox.node.on(“toggle”,this.onCheckBox, this);
onCheckBox: function (checkBoxComponent) {
}
如图,必现,版本2.0.8
checkBox.node.on(“toggle”,this.onCheckBox, this);
onCheckBox: function (checkBoxComponent) {
}
原因是 设置checkBox的isChecked属性会重复调用toggle事件
(1)我这也是升级到2.0.7版本后出现这样的问题;
(2)在2.0.3版本时,回调是在编辑器中绑定的,在onLoad()中读取缓存配置去设置toggle.isChecked,在toggle的回调中再次设置toggle.isChecked,这样没问题;
(3)升级到2.0.7版本,打开界面调用onLoad(),在设置toggle.isChecked时会调用其回调,回调中再次设置toggle.isChecked导致反复回调;
(4)把toggle的点击回调通过代码toggle.node.on(‘toggle’, this.callback, this)设置,从编辑器中移除其回调,发现又可以了(或者回调中不设置toggle.isChecked);
(5)应该是新版在设置toggle.isChecked时触发了回调,不知道为啥这样修改