如何获取TiledMap的图层和对象层

properties: {
roadPrefabs : {
default:[],
type:[cc.Prefab],
},
}

var tPrefab = cc.instantiate(this.roadPrefabs[4]);
var tTiledData = tPrefab.getComponent(cc.TiledMap);

tTiledData.getObjectGroup(“groupName”); //null
tTiledData.getLayer(“layerName”); //null

请问如何获取图层和对象层啊? 上边的2个获取方法全是null.

请参考cc.TiledMap和cc.TiledLayer的api

看了API了 找不到相关的方法… 本人愚笨…请赐教

请问你的代码是写在 onLoad 函数中吗?如果是的话,请在 start 函数中通过接口获取图层和对象层。我也会测试一下的。谢谢反馈!

是这样吗? 如果是的话 依旧是null

你好,你的代码中并没有将 tPrefab 加到节点树中。所以当 start 调用时,tPrefab 对应的渲染节点被回收了,导致无法获取。请在 tTiled = tPrefab.getComponent(cc.TiledMap); 这句代码之后加上 this.node.addChild(tPrefab);

我也遇到这个问题,晚上试下大老的方法