CustomList

项目中很多用到list的地方

所以扩展list类  

1,设定 ,清空默认皮肤

public function set setMyStyle(type:int):void {
switch(type)
{
case 1:
setStyle("skin" , Reflection.getClass("customCellListSkin1"));//清空默认皮肤,第二个参数为空白的Movieclip
setStyle("cellRenderer" , GuildSkillItem);//传入自定义的cellRenderer
default:
{
break;
}
}

}

2,设置皮肤

public function set skin(type:uint):void {
if (type > 0) {
setSkin("upArrowUpSkin" , ("ArrowUp_upSkin" + type));
setSkin("upArrowOverSkin" , ("ArrowUp_overSkin" + type));
setSkin("upArrowDownSkin" , ("ArrowUp_downSkin" + type));
setSkin("upArrowDisabledSkin" , ("ArrowUp_disabledSkin" + type));
setSkin("trackUpSkin" , ("Track_skin" + type));
setSkin("trackOverSkin" , ("Track_skin" + type));
setSkin("trackDownSkin" , ("Track_skin" + type));
setSkin("trackDisabledSkin" , ("Track_skin" + type));
setSkin("thumbUpSkin" , ("Thumb_upSkin" + type));
setSkin("thumbOverSkin" , ("Thumb_overSkin" + type));
setSkin("thumbIcon" , ("Bar_thumbIcon" + type));
setSkin("thumbDownSkin" , ("Thumb_downSkin" + type));
setSkin("downArrowUpSkin" , ("ArrowDown_upSkin" + type));
setSkin("downArrowOverSkin" , ("ArrowDown_overSkin" + type));
setSkin("downArrowDownSkin" , ("ArrowDown_downSkin" + type));
setSkin("downArrowDisabledSkin" , ("ArrowDown_disabledSkin" + type));
setSkin("trackUpSkin" , ("ScrollPaneBgSkin" + type));
setSkin("trackOverSkin" , ("ScrollPaneBgSkin" + type));
setSkin("trackDownSkin" , ("ScrollPaneBgSkin" + type));
setSkin("trackDisabledSkin" , ("ScrollPaneBgSkin" + type));
}
}

private function setSkin(styleName:String , className:String):void {
try {
setStyle(styleName , Reflection.getClass(className));
} catch (e:Error) {
debug("加载皮肤失败:" , e.getStackTrace());
}
}

3,扩展cellRenderer类 ,可使用继承也可以使用实现接口

注意:实现接口的时候,要继承组件类UIComponent 并重写DrawNow()方法

在此方法中,调用cellRenderer里用到的按钮等组件自身的DrawNow()方法,这样

才能保证正确重绘。

4,CustomList构造函数中依次调用

public function CustomList(value:int = 1) {
super();
text = new TextFormat();
setMyStyle = value;
skin = 3;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值