3.7.3版本ToggleContainer严重bug,单选效果无效

  • Creator 版本: 3.7.3

  • 目标平台:浏览器预览,编辑器预览、字节小游戏、快手小游戏

  • 重现方式:getComponent(Toggle).isChecked = true,无效

  • 首个报错:没有报错

  • 重现概率: 100%

我们项目是个卡牌游戏,所以有大量用到toggle做类型选择,没想到你浓眉大眼的cocos会出现这样的问题, :weary:


确认已有ToggleContainer组件

toggle1的isChecked 默认为true

toggle2的isChecked 默认为false

当我点击隐藏ToggleGroup,并改变toggle2的isChecked 默认为true,惊奇的发现toggle1和toggle2的isChecked 同为true,ToggleContainer没有起作用。

这时候我点击显示ToggleContainer节点,你会发现,toggle2的isChecked 强制为false

附上demo:3.7.3版本ToggleContainer严重bug,单选效果无效.zip (11.6 KB)

希望在toggle2的isChecked = true,显示ToggleContainer节点,能正确的显示对应toggle2的isChecked 的状态

你把ToggleContainer隐藏了,它都不会执行了,你改子元素肯定就会这样

项目中A界面隐藏了,B显示选择某物品,会改变A界面的类型。

加个循环一下呗,或者用透明

我自己改了,一开始我改了toggle的isChecked = true,也console.log输出了,确实true,界面一切换,变false,我还以为是自己代码bug导致的isChecked又赋值为false

image

当然了,如果cocos的ToggleContainer组件能提供一个方法,传index,并改变toggle的isChecked最好了

只能说 设计真烂