现在的位置: 首页 > 综合 > 正文

Flex开发时需要注意的几个问题

2014年02月22日 ⁄ 综合 ⁄ 共 797字 ⁄ 字号 评论关闭

 

在学习Flex开发的过程中,要善于总结经验,下面就是我个人的一些心得,相信本文介绍一定会让你有所收获。

 

和Flash的开发环境相比,Flex开发提供的组件库确实很诱人,但由于功能太全面,导致程序的体积大,有时候使用不当,可能会影响程序运行效率。

在Flex的帮助手册中,有一个专门的章节讲了程序的优化,下面是我结合帮助作的几点Flex开发小结:

 

1、避免容器的多级嵌套,减少相对尺寸、相对定位的使用。

 

在使用百分比来给容器内的元件定尺寸,一旦容器中的任何一个元件的位置和尺寸变化,都会引发容器对所有子级的重定位动作。如果嵌套的级别很深,这个计算量会很大。

 

2、尽量使用轻量级的容器

 

Canvas是体积最小的容器,它只支持绝对定位。很多时候,都可以使用它来代替HBOx和VBox。另外,Canvas也是我们编写自定义容器性质组件的一个首选。它具有容器的基本功能,利于扩展。

 

3、避免使用大体积的组件,比如DataGrid、AdvancedDataGrid

 

大个子组件的功能强大,但开销也是非常大的。由于功能的复杂性,使得皮肤、样式、itemRenderer的实现都格外复杂。

 

4、处理数据时多用分页的方式

 

在使用数据类型控件时,尽量减少数据一次的显示量。比如TileList,它会把数据一次性全部创建,不管是不是需要显示,这样很浪费资源。ViewStack、TabNavigator等在处理元件时,并不是一次创建,只要元件在第一次被显示时才创建,这样,就避免的不必要的开销。

 

5、setStyle和styleName

 

Flex开发组件的皮肤都是可视化元件,组件在自身初始化时,会使用当前的样式比如styleName完成所有皮肤元件的绘制。如果我们在运行期间通过setStyle修改了组件的样式,组件的尺寸、位置就会作相应调整。联系到第一条,如果组件位于一个层级很深的容器中,也会有一个大的计算量。

抱歉!评论已关闭.