关于Feathers中Button是如何自定义个性皮肤原教程中是这样描述的
绿色部分是原教程,我尝试后发现无效果,实际上是因为Button在addChil的时候会把theme中的默认皮肤方法赋值给stateToSkinFunction, 所以要使我们设置生效的方法就是在addChild我们的button之后将stateToSkinFunction赋值为null。图中红色框框部分是我编辑上去的, 同学们可以尝试下应该可以生效。
另外其实我们也可以直接设置stateToSkinFunction,就像这样:
button.stateToSkinFunction = function(target:Object, state:Object, oldValue:Object = null):Image
{
switch(state)
{
case Button.STATE_DOWN:
return new Image(myDownTexture);
break;
case Button.STATE_DISABLED:
return new Image(myDisableTexture);
break;
case Button.STATE_UP:
return new Image(myUpTexture);
break;
case Button.STATE_HOVER:
return new Image(myHoverTexture);
break;
}
return new Image(myDefaultTexture);
};