2.3.3和2.3.4使用中出现的问题。。。

if (!Global.maskNode) {
    Global.maskNode = new cc.Node('mask');
    Global.maskNode.color = new cc.Color(0, 0, 0, 255);
    Global.maskNode.opacity = 180;
    Global.maskNode.zIndex = 9;
    cc.find('Canvas').addChild(Global.maskNode);
    let sprite = Global.maskNode.addComponent(cc.Sprite);
    cc.loader.loadRes('ui/common/whiteMask', cc.SpriteFrame, (err, res) => {
        sprite.spriteFrame = res;
        Global.maskNode.width = 720;
        Global.maskNode.height = 1600;
    });

}
else {
    // cc.loader.loadRes('ui/common/whiteMask', cc.SpriteFrame, (err, res) => {
    //     Global.maskNode.getComponent(cc.Sprite).spriteFrame = res;
    //     Global.maskNode.width = 720;
    //     Global.maskNode.height = 1600;
    // });

    Global.maskNode.active = !Global.maskNode.active
}

2.3.3和2.3.4 版本用代码创建节点设置spriteFrame之后,将节点的active设为false之后再设置成true之后,节点的spriteFrame丢失,2.2.0版本没有这个问题,请问这是bug还是我的操作有问题,有人遇到过吗。

我这边测试是正常的,能否个一下 demo 呢?

test.zip (901.4 KB)
您好 这是demo。

我看了一下,不是消失,是大小变成原来图片大小了,你应该设置一下就行了

sprite.sizeMode = cc.Sprite.SizeMode.CUSTOM;

好的,明白了,感谢

2.3.4预制体中无法用快捷键删除节点

这个问题会在 2.4.0 进行修复