toggleGroup中toggle代码中使用isChecked无效

  • Creator 版本:2.0.10

  • 目标平台:

  • 详细报错信息,包含调用堆栈:

  • 重现方式:

  • 之前哪个版本是正常的 :

  • 手机型号 :

  • 手机浏览器 :

  • 编辑器操作系统 :

  • 编辑器之前是否有其它报错 :

  • 出现概率:

  • 额外线索:

  • Creator 版本:2.0.10

IDE中使用isChecked是有效的


在代码中直接去设置isChecked不会产生效果,后来我对下面的sprite进行也一起进行设置也没效果

我后来又试了一下全部初始化在设置也没效果,永远都是默认选中第一个

isChecked 是属性,返回的是一个bool 类型的,也就是是否选中吧,

要使之选中的或者未选中的话, 用 check / uncheck 方法

2.0.10新版本的调不动,不管是全部设置为false还是true,都设置不成功,点击倒是都正常,就是默认设置动不了

正解,这里应该使用check()和uncheck()。

还是动不了啊,都试过了

在同一个toggleGroup下的俩个toggle按钮,UI默认的是一号按钮显示,然后在代码中,初始一号按钮隐藏,二号按钮显示。但是运行的永远是一号显示,不管代码怎么调,都是按UI的显示。
试过了 node.getComponent(cc.Toggle).uncheck();或者是node.getComponent(cc.Toggle).isChecked=false;
都改动不了

没有使用过这个组件, 单独添加toggle到节点里面,使用上面所说的方法,可以实现某个toggle选中或未选中,

@panda , @jare

不可能的,看我demo里怎么用的。Test.zip (584.5 KB)

谢谢,问题已经解决了,是旧版的toggleGroup在新版本使用有问题,我改成toggleContainer就没问题了,我只能说最好还是不要用旧版本的东西吧,不然感觉会出很多莫名其妙的问题

我的还是会出现这种情况,我用的是toggleContainer

var com = pNode.getComponent(cc.ToggleContainer);
if (com) {
    var toggleItem1 = com.toggleItems[0];
    var toggleItem2 = com.toggleItems[1];
    if (toggleItem1 && toggleItem2) {
        toggleItem2.isChecked = true;
        toggleItem1.isChecked = false;
    }
}

先赋值true 后赋值false。可以生效。
看了底层之后发现的。如果先赋值false,这时没有选项被选中 则 isChecked 会被赋值为 true 相当于之前的赋值是无效的。