- + P A

- 设计松耦合的Flex组件[转]

      Flex研究所 2007-8-4 10:43
Flex应用程序可能有复杂的结构但它们通常都是由多个MXML,Actionscript 以及CSS文件组成。

在单个文件里编写整个程序不是一个最佳实践。那样会使代码难以维护和重用,而且程序没有被架构成逻辑上的各个部分。

Flex 允许开发者将一个工程分成外部的模块,创建分离的MXML文件并且单独维护它们。将Flex程序分离成各个逻辑模块有很多好处。它允许开发小组独立地开发 和调试单个模块,模块中的错误和功能可以被独立出来。这使得代码变得容易维护,也提高了代码在多个应用程序间的重用性。

每个MXML文件是一个MXML组件,但是只有主MXML程序可以加载外部组件。事实上一个应用程序中只能有一个 Application 标签,其它所有都是MXML组件。

为了设计一个MXML组件,需要创建一个MXML文件。这个文件的根标签不是Application而是一个组件标签(比如VBox,Panel,Canvas,Button,DataGrid等等),而且根标签中需要声明命名空间http://www.adobe.com/2006/mxml

下面的代码展示了一个简单的叫做custDataGrid.mxml 的MXML组件,它由一个用来存储数据的DataGrid组成。

<?xml version="1.0" encoding="utf-8"?>
<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml">

<mx:DataGrid id="myDG" >
<mx:columns>
    <mx:DataGridColumn headerText="Posts" dataField="title" />
<mx:DataGridColumn headerText="Date" dataField="pubDate" width="100" />
    </mx:columns>
</mx:DataGrid>

</mx:VBox>


根标签是一个简单的VBox组件并且其中声明了xmlns:mx="http://www.adobe.com/2006/mxml"。一旦创建了外部模块,主程序就可以像下面一样调用这个MXML组件:

程序代码 程序代码
<?xml version="1.0" encod
标签集:TAGS:flex
我要留言To Comment 阅读全文Read All | 回复Comments() 点击Count()