注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

神魔破杜梓的叨叨堂

Programming every day!

 
 
 

日志

 
 
 
 

IconUtility 应用二例(动态载入icon)  

2008-03-23 14:55:16|  分类: My Tech |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
<item icon="assets/myIcon.png"/>

DynamicIconListItemRenderer:

   import com.edison.util.IconUtility;
   
    import flash.display.DisplayObject;
   
    import mx.controls.List;
    import mx.controls.listClasses.ListData;
    import mx.controls.listClasses.ListItemRenderer;

    public class DynamicIconListItemRenderer extends ListItemRenderer
    {
        public function DynamicIconListItemRenderer()
        {
            super();
        }
       
        override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
        {
            super.updateDisplayList(unscaledWidth,unscaledHeight);
           
            // make a distance between the icon and the label
            var distance:Number = 5;
            label.x = label.x + distance;   
           
        }
        //重写此方法
        override protected function commitProperties():void
        {           
            if(!ListData(listData).icon)
            {               
                ListData(listData).icon = IconUtility.getClass(this,data[List(listData.owner).iconField]);
            }
            super.commitProperties();
            if(this.label.x == this.icon.x)
            {
                this.label.move(this.icon.width,this.label.y);
            }
        }
    }

DynamicIconMenuBarItem:
import com.edison.util.IconUtility;
   
    import flash.display.DisplayObject;
   
    import mx.controls.menuClasses.MenuBarItem;

    public class DynamicIconMenuBarItem extends MenuBarItem
    {
        public function DynamicIconMenuBarItem()
        {
            super();
        }

        //重写此方法
        override protected function commitProperties():void
        {
            super.commitProperties();   
           
            if(icon == null && data != null)
            {               
                var iconClass:Class = IconUtility.getClass(this,data[menuBar.iconField]);
                icon = new iconClass();
                addChild(DisplayObject(icon));
            }           
           
            invalidateDisplayList();       
        }
       
    }


  评论这张
 
阅读(915)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017