CocosCtretor中setTexture的问题

博客指出在cocoscreator里用setTexture给精灵帧设置材质,用cc.loader.getRes获取材质为列表设置时,所有item都显示同一张材质,设置无效。作者怀疑这是个bug并记录,还给出解决办法,即使用new cc.SpriteFrame设置。

setTexture用于给精灵帧设置材质,在给一个列表设置材质时,用cc.loader.getRes得到的材质进行设置,永远显示第一张材质,列表里所有的item都是同一张材质,设置无效。如下:

        let iconId = itemID+1;
        let iconKey = "ui/icon/head_"+iconId+".png";
        let texture = cc.loader.getRes(iconKey);

        this.head_icon.spriteFrame.setTexture(texture);

        以上设置所有的item都显示head_1.png,算不算cocoscteator的一个bug呢?在此记录一下,通过以下方法可以解决

        var spriteFrame = new cc.SpriteFrame(iconKey);
        this.head_icon.spriteFrame = spriteFrame;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

西溪漫步

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值