CocosCreator-使用代码创建一张单色图片
2019-09-28 本文已影响0人
vectorZ
有时候游戏中需要一张纯色的图片,创建一个cc.Spriteframe组件并不会包含默认的图片,所以我们可以使用下面的方法创建一个单色图片的节点。
export function getBlackBg(parent: cc.Node = null) {
return new Promise((resolve, reject) => {
let texture = new cc.Texture2D;
let spriteFrame = new cc.SpriteFrame;
texture.initWithData(new Uint8Array([0, 0, 0]), cc.Texture2D.PixelFormat.RGB888, 1, 1, cc.winSize);
spriteFrame.setTexture(texture);
spriteFrame.setRect(cc.rect(0, 0, cc.winSize.width * 20, cc.winSize.width * 20));
//初始化模态
let node = new cc.Node;
node.name = "modelbg";
node.opacity = 190;
node.setPosition(cc.v2());
node.setContentSize(cc.winSize);
node.addComponent(cc.Sprite).spriteFrame = spriteFrame;
node.active = false;
node.on("touchend", e => { e.stopPropagation(); });// 不可点击穿透
resolve(node);
});
}