动态修改spriteframe

在一个场景中添加了一个sprite和几个按钮,如何实现点击不同的按钮来切换sprite中显示的图片(也就是如何动态修改spriteframe,如图选择关卡一时显示一张图片,选择关卡二时显示另一张图片)

properties: {
    //sprite节点
    spr:{
        type:cc.Sprite,
        default:null
    },
      //你要换的图片
      ima:{
        type:cc.SpriteFrame,
        default:null
    }
},

//按钮触发事件
onclick()
{
var com=this.spr.getComponent(“cc.Sprite”);
com.spriteFrame=this.ima;
//不知道为什么下面这两句一定要有,不然不显示效果
this.spr.enabled=false;
this.spr.enabled=true;
}
应该有更好的方法,不过我不知道

嗯非常感谢