`

flex中修改skin 转帖

    博客分类:
  • flex
阅读更多
flex中修改skin

创建Skin可以继承自各个skin(见帮助)
如:继承LinkButtonSkin
重写(override) updateDisplayList方法
name变量为upSkin、overSkin、downSkin等。

public class MenuButtonSkin extends LinkButtonSkin
{
private var backgroundFillColor:Number;
private var cornerRadius:int = 4;
public function MenuButtonSkin()
{
super();
}

override protected function updateDisplayList(w:Number, h:Number) : void{
super.updateDisplayList(w, h);
graphics.clear();
trace("name:"+name);
switch(name){
case "upSkin":
backgroundFillColor = 0xF0F0F0;
break;
case "overSkin":
backgroundFillColor = 0x666666;
break;
case "downSkin":
backgroundFillColor = 0x000000;
break;
case "disabledSkin":
backgroundFillColor = 0xff0000;
break;
}
drawRoundRect(0,0,w,h,cornerRadius,backgroundFillColor,1);
}
}
在css中引用,将overSkin upSkin downSkin指向skin类:

mx|LinkButton{
    skin: ClassRefrence("skins.MenuButtonSkin")   //类名
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics