更改spriteFrame图片,不知道问题出在哪

想要根据Sprite的填充程度来更改图片,照着文档在做,但是试了好几次都不起效,找不到问题在哪

PopulaceImgChange: function () {
var FillRange = this.node.getComponent(cc.Sprite).fillRange;
var Frame = this.node.getComponent(cc.Sprite).SpriteFrame;
if (FillRange > -0.4) {
cc.loader.loadRes(“Texture/ui/ui_populace_medium”, cc.SpriteFrame, function (err, spriteFrame) {
Frame = spriteFrame;
});

    } else if (FillRange > -0.1) {
        cc.loader.loadRes("Texture/ui/ui_populace_less", cc.SpriteFrame, function (err, spriteFrame) {
            Frame = spriteFrame;
        });
    } else {
        cc.loader.loadRes("Texture/ui/ui_populace_high", cc.SpriteFrame, function (err, spriteFrame) {
            Frame = spriteFrame;
        });
    }
},

sprite.spriteFrame = newSpriteFrame;

this.getComponent 试下

var Frame = this.node.getComponent(cc.Sprite).spriteFrame;

这里spriteFrame的s要小写

真相了

这个问题解决了
但是,我打的log显示spiteframe已经替换了,显示的图片还是没有变:joy:

sprite.spriteFrame = newSpriteFrame; 要像这样赋值。

我也有这个问题,请问是如何解决的

难道没感觉出,判断条件有问题吗 FillRange>-0.4 和 FillRange>-0.1 ,是什么逻辑要这么写?
动态加载的资源你需要放到 resources 文件夹下面