Toggle组件里的setIsCheckedWithoutNotify方法

  • 文档版本:3.8.2

  • 文档链接:Cocos Creator API

  • 具体的问题或改进建议:setIsCheckedWithoutNotify方法的方法说明:“设置 isChecked 而不调用 checkEvents 回调。”, 实际使用还是会调用组件里挂的checkEvents方法。

3.8.7版本也有这个问题,临时使用了以下代码解决:

public static ToggleSetCheckedWithoutNotify(toggle: Toggle, isChecked: boolean) {
    const container = toggle.node.parent.getComponent(ToggleContainer);
    if (!container) {
        return;
    }
    const events = container.checkEvents;
    container.checkEvents = [];
    toggle.setIsCheckedWithoutNotify(isChecked);
    container.checkEvents = events;
}