首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

一个九宫格肌肤类

2012-10-24 
一个九宫格皮肤类这个类是做某个游戏皮肤用到的,功能大致等同于用元数据标签Embed,而且比它还要繁琐一些。S

一个九宫格皮肤类
这个类是做某个游戏皮肤用到的,功能大致等同于用元数据标签Embed,而且比它还要繁琐一些。

SkinUtil.as

package com.thornbird.skins.halo{import com.thornbird.utils.SkinUtil;import flash.display.Bitmap;import flash.display.BitmapData;import flash.display.DisplayObject;import flash.filters.GlowFilter;import flash.geom.Rectangle;import mx.core.IUITextField;import mx.core.mx_internal;import mx.skins.halo.ButtonSkin;use namespace mx_internal;public class ButtonSkin extends mx.skins.halo.ButtonSkin{[Embed(source="../../../../../assets/images/button_up.png")]private static var ButtonUp:Class;private static var buttonUpBitmap:Bitmap = null;[Embed(source="../../../../../assets/images/button_over.png")]private static var ButtonOver:Class;private static var buttonOverBitmap:Bitmap = null;[Embed(source="../../../../../assets/images/button_down.png")]private static var ButtonDown:Class;private static var buttonDownBitmap:Bitmap = null;[Embed(source="../../../../../assets/images/button_disabled.png")]private static var ButtonDisabled:Class;private static var buttonDisabledBitmap:Bitmap = null;protected var drawFocusFlag:Boolean = true;protected var focusIn:Boolean = false;override protected function updateDisplayList(w:Number, h:Number):void{var bitmapData:BitmapData = null;switch (name){case "selectedUpSkin":case "upSkin":if (buttonUpBitmap == null)buttonUpBitmap = new ButtonUp() as Bitmap;bitmapData = buttonUpBitmap.bitmapData;break;case "selectedOverSkin":case "overSkin":if (buttonOverBitmap == null)buttonOverBitmap = new ButtonOver() as Bitmap;bitmapData = buttonOverBitmap.bitmapData;break;case "selectedDownSkin":case "downSkin":if (buttonDownBitmap == null)buttonDownBitmap = new ButtonDown() as Bitmap;bitmapData = buttonDownBitmap.bitmapData;break;case "selectedDisabledSkin":case "disabledSkin":if (buttonDisabledBitmap == null)buttonDisabledBitmap = new ButtonDisabled() as Bitmap;bitmapData = buttonDisabledBitmap.bitmapData;break;}graphics.clear();if (bitmapData != null)SkinUtil.drawScaleGrid(graphics, 0, 0, w, h, bitmapData, new Rectangle(9, 6, 68, 11));if (name.toLowerCase().indexOf("disabled") < 0)SkinUtil.drawOutline(getTextField(), getStyle("outlineColor"), getStyle("outlineAlpha"));}protected function getTextField():IUITextField{var textField:IUITextField = null;if (parent){for (var i:int = 0; i < parent.numChildren; i++){var child:DisplayObject = parent.getChildAt(i);if (child is IUITextField){textField = child as IUITextField;break;}}}return textField;}}}

热点排行