尝试在场景中创建一个有色的层:
// test.js :
cc.Class({
extends: cc.Component,
properties: {},
onLoad: function () {
this._layer = new cc.LayerColor(cc.color(255, 255, 0, 255), 200, 200);
this.node._sgNode.addChild(this._layer);
}
});
然后将这个脚本挂载到场景中的一个 node 节点上。
场景的结构:
+ canvas
+ aNode ( 挂载 test.js )
程序运行后没有看到任何的图层显示。
我尝试着在创建layer后打印了一下,显示 position,width, height, color 都是没有问题的。
很想知道这个是什么原因呢?
PS:
我知道可以创建一个单色的sprite来实现同样的效果,但是由于不想引入额外的资源文件,cc.LayerColor 是最好的方案。
此外 cc.DrawNode 之类的也可以达到效果,但是由于我之后会在 layer 中添加一些 shader效果的处理,所以 cc.DrawNode 之类的也不是好的解决方案。