使用sprite.spriteFrame.setTexture动态修改预制体内的精灵图片,会导致所有该预制体实例化对象的图片都改变
预制体 myPicPrefabs:
cc.Class({
extends: cc.Component,
properties: {
pic: cc.Sprite,
setPic: function (value) {
this.pic.spriteFrame.setTexture(cc.url.raw('resources/' + value + '.png'));
}
…
在app中 实例化 myPicPrefabs:
var pic1 = cc.instantiate(this.myPicPrefabs);
var pic2 = cc.instantiate(this.myPicPrefabs);
pic1.setPic(1);
pic2.setPic(2); //这里会导致pic1的图片也改变,和pic2一样
请教,这个问题该怎么处理,或者有什么其他办法实现类似功能,感谢