As方式重写Flex组件基本步骤

1、如有必要,为组件创建所有基于标记(tag-based)的皮肤(skins)

2、newAs类文件

<1>从一个基类扩展,如UIComponent等

<2>指定使用者可以通过MXML标记设置的属性

<3>嵌入(Embed)图片和Skins文件,文件尽可能小

<4>实现构造器,可以设置属性和样式的缺省值,或者初始化数据结构,比如数组

<5>根据需要,确定是否覆盖以下方法:

(a)UIComponent.createChildren(),创建组件的子组件

(b)UIComponent.commitProperties(),提交组件所有属性变化

(c)UIComponent.measure(),设置组件缺省size(measuredWidth、measureHeight)和缺省最小size(measureMinWidth、measuredMinHeight)

(d)UIComponent.layoutChrome(),定义容器的边框区域和确定边框区域的位置,及确定要在区域中显示的附加元素。eg:Panel容器使用layoutChrome()定义panel容器的title区域,这个区域用来包含title文本和close按钮。

(e)UIComponent.updateDisplayList(),据以前设置的属性和样式确定组件的子组件在屏幕上的大小(size)及位置(position),并且画出组件所使用的所有皮肤(skins)及图形化元素。组件的父容器负责确定组件本身的size.

(6)增加属性(properties),方法(methods),样式(styles),事件(events)以及原数据

相关推荐