在代码中更改node.color,颜色一闪而过,之后仍然没有颜色

sprite.node.color = new cc.Color(134, 255, 134, 255)
让节点变成绿色,实际效果是变成绿色一瞬间,马上变回原样

想知道是否是bug,或者我的用法不对,亦或是没有设置什么属性
请知情人告知,感谢

自己顶一下

做法没错,我也测试了,不是你这句话代码的问题,应该还有其他代码导致的,希望能在描述的详细一点

感谢,我会检查一遍
另外更换spriteFrame会导致color还原吗?

并不会

可能确实有问题,还原方法如下:

在面板中强行将nodeA的color改为绿色,保存
在代码中随便改一下,比如加个空格
切回creator,creator会自己编译一段时间(预览播放按钮变黑),不用运行
之后,面板中nodeA的color还原为白色

情景是麻将游戏,nodeA是界面上很多麻将中的一个

我刚刚也按照你的方法测试了,还是没出现你的问题,给我一个 demo 吧

最近论坛中流出的达达麻将代码,用那个就可以重现本问题,打开game场景,随便修改一个自己这边麻将的颜色,改点代码,编译,颜色就会还原

修改代码并保存代码之后,颜色还原了

是不是他在 onLoad 里面重新设置了麻将的颜色数值了

没有运行,这些都是在creator里出现的,即使这样onload也会起作用吗?

你先找找有没有代码在 onLoad 函数是设置麻将颜色,然后打个 Log 后,在按 F7 编译一下脚本看看是否有调用就知道了

可能是我没有表达明确,这些问题的出现,自始至终我都没有运行过代码

在creator里,颜色就没了

好吧,你给我 demo 吧,或者给我项目链接,我去下载来看看,不然真的无法定位到问题

没弄过私信,去这里下载吧:
http://forum.cocos.com/t/creator/43674
帖子里面有个群,楼主说群共享里有(我没有加进去验证)

刚刚发现,设置颜色的NodeA是个预制体,应该是这个原因?
所有的预制体都不能改变颜色
不是的就可以

还要去注册账号,进去要钱,你还是加我 qq 821686174 吧,然后传 demo 给我,找到问题后直接删除,不会利用该项目

具体的原因找到了,是由于麻将子是用 Button 组件,同时使用了 Color Transition 功能,如果单纯的设置 Sprite Color 以后编译脚本时就会被 Button 组件重置为 Narmal 所定义的颜色