圆角TabNavigator:RoundTabNavigator

package com.sybuild.sdxt.core.component.syTabNavigator.component
{
    import mx.containers.TabNavigator;
    /**
     * 用于定义选项卡的默认颜色  */
    [Style(name="upSkinColors",type="Array",format="Color",inherit="yes",theme="spark")]
    /**
     * 用于定义选项卡鼠标覆盖颜色  */
    [Style(name="RollColors",type="Array",format="Color",inherit="yes",theme="spark")]
    /**
     * 用于定义选项卡被选中时颜色  */
    [Style(name="SelectColors",type="Array",format="Color",inherit="yes",theme="spark")]
    
    [Style(name="borderAlpha", type="Number", inherit="no", defaultValue="1")]
    
    public class MyTabNavigator extends TabNavigator
    {
        private var _showBorder:Boolean=true;
        
        public function MyTabNavigator()
        {
            super();
        }
        
        [Inspectable(category="General", enumeration="true,false", defaultValue="true")]
        
        public function set showBorder(value:Boolean):void
            
        {
            
            this._showBorder=value;
            
        }
        
        public function get showBorder():Boolean
            
        {
            
            return this._showBorder;
            
        }
        
        
        
        override protected function updateDisplayList(unscaledWidth:Number,unscaledHeight:Number):void
            
        {
            
            super.updateDisplayList(unscaledWidth,unscaledHeight);
            
            this.drawOutline();
            
        }
        
        
        
        public function drawOutline():void
            
        {
            
            var cornerRadius:Number=this.getStyle("cornerRadius");
            
            if(cornerRadius>0)
                
            {
                
                this.setStyle("backgroundAlpha", 0);
                
                this.setStyle("borderStyle", "none");
                
                
                
                var borderColor:uint=this.getStyle("borderColor");
                
                var borderAlpha:Number=this.getStyle("borderAlpha");
                
                var backgroundColor:uint=this.getStyle("backgroundColor");
                
                
                
                graphics.clear();
                
                if(showBorder)
                    
                    graphics.lineStyle(1,borderColor,borderAlpha,true);
                
                graphics.beginFill(backgroundColor,1);
                
                graphics.drawRoundRectComplex(0,this.tabBar.height-2,this.width,this.height-this.tabBar.height+1,0,cornerRadius,cornerRadius,cornerRadius);
                
                graphics.endFill();
                
            }
            
        }
        
    }
    

}



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值