1.6.1 设置active的问题

这个节点是有的,而且是今天之前都没有这个问题。不只是这一个button节点,所有的都是


设置label没问题,但是设置cocos图片就报错了
还是说我这种写法本身就有问题

label 你定义的是 cc.Label 这个是一个组件
cocos 你定义是 cc.Node 这个已经是节点了

    this.cocos.node.active = false;

这里不需要再.node来拿到组件上面的节点

懂了,可是设置button的active属性还是不行。

还有这个问题,之前这样写是有效果的,但是现在没作用了

这个没有大佬来解释一下吗,button设置不了active。还是只有我碰到这种情况了

不可能设置无效啊

第一个你先看是否对象是 node
第二个是不是其他地方的代码设置了

最好自己调试一下,很快的 Chrome,打开控制台,打个断点

错了,this.nodeLayout.children这个是.nodeLayout节点下的所有孩子节点,这样遍历不好,因为某些操作会引起下标变化

就比如你在这个遍历里,删除了一个节点,那整个children数组就会变化,之前的下标顺序也会变,这个数组是动态的

还有active是node的属性,其他东西没有这个属性

只是用来做显示和隐藏没有做删除动作,而且我疑惑的在于之前是可以的。但是在我没修改任何代码的时候运行在chrome上面报错了

active=false,layout组件里可能就不包括这个节点了

你这个属于隐患,之前没报错不代表没错

button 本来就没这个属性

你可以在循环里多打印一些值显示出来,比如数组的总长度,节点的类型



可是这里确实是隐藏了呀。。

会不会是因为我type设置了Node才能设置成功

type改成BUTTON还是能隐藏

好吧,你说的 button 是一个 cc.Node。我以为是 cc.Button…