在学习Flex组件时你可能会遇到重组Flex组件的概念,这里从三个方面向大家介绍重写Flex组件,相信本文介绍一定会让你有所收获。
重写Flex组件
一、为什么要重写Flex组件
1、在Flex已有Flex组件无法满足业务需求,或是需要更改其可视化外观等特性时,直接进行继承扩展。举例,继承BUTTONFlex组件的长文本却不自动换行的自定义控件。
2、为了模块化设计或进一步重用,需要对Flex组件进行组合。比如一个包括TEXTAREA,BUTTON的复合控件。
二、重写Flex组件需要经常换位思考的三个角色
1、作为重写Flex组件的使用者,有哪些需求。比如需要在MXML标签和AS代码中暴露哪些属性及对应默认值、事件和事件的处理逻辑。
2、重写Flex组件一般需要使用Flex原有Flex组件,要站在原有开发者的角度了解设计规则。
3、作为重写Flex组件的设计者,在满足需求的情况下尽量做到可复用、低耦合易扩展等设计原则,让新Flex组件像Flex原Flex组件一样好用。
三、重写Flex组件AS方式和MXML方式的采用规则
1、MXML文件和AS文件最后都会被编译成AS类,只不过MXML编译速度稍慢一些
2、如果MXML和AS都能完成的一个简单Flex组件,MXML更容易被创建和控制布局
3、当要覆盖Flex组件的某些方法时只能用AS方式
4、创建一个直接继承UIComponent的子类时只能用AS
5、创建非可视化Flex组件比如Formatter、validator、Effect……时,只能用AS
6、要为Flex组件添加日志功能时,只能用AS.
【编辑推荐】