代码如下:
for (var i = 0; i < rewardArr.length; i++) {
var prefab = cc.instantiate(this.rewardPrefab);
var rewardInfo = rewardArr[i];
var item = prefab.getChildByName('item');
var num = prefab.getChildByName('num');
if(rewardInfo['type']==1) {
var itemInfo = dataApi.props.findById(rewardInfo['item_id']);
var icon = itemInfo['icon'].split('.');
num.getComponent(cc.Label).string = rewardInfo['num'];
cc.loader.loadRes('props/' + icon[0], cc.SpriteFrame, function (err, spriteFrame) {
if (err) {
cc.error(err.message || err);
return;
}
var sprite = item.getComponent(cc.Sprite);
sprite.spriteFrame = spriteFrame;
});
}
this.reward_node.addChild(prefab);
}
发现只有最后一个能显示图片,这是为啥啊
cc.loader.loadRes 不能在循环里使用吗?
那么问题来了 如何给动态创建的多个Prefab里面的sprite显示图片呢?
搞定了