编译MXML为SWF文件
你将你的应用作为SWF文件部署,或者你如果有 Adobe LiveCycle Data Services ES你可以将你的应用作为一组MXML,as文件来部署。
如果你使用flex builder,你可以在flex builder中编译,运行swf文件,如果你的程序执行正确,你可以用copy这些文件到一个web容器中的方法,来部署这个应用。用户可以通过http://hostname/path/filename.html访问这个已经部署的swf文件。
flex还有一个基于命令行的编译器,mxmlc,使用它你可以编译mxml文件,你可以使用mxmlc编译一个hello.mxml文件,例如:
mxmlc --show-actionscript-warnings=true --strict=true c:/appDir/hello.mxml
在这个例子中flexInstallDir 是flex的安装目录,appDir 是hello.mxml所在的文件夹。
编译的结果swf文件也就是hello.swf文件和hello.mxml在同一文件架下。
mxml标签和actionscript类的关系
adobe用actionscript类库来实现flex,这个类库包含组件(容器和控件),管理类,数据服务类,和其他各种各样的类。你可以使用mxml和actionscript语言和这些类库来开发你的应用。mxml标签与actionscript类及类的属性保持一致,flex解析mxml标签,将其编译成一个swf文件,这个编译好的swf文件中就有mxml文件对应的actionscript对象。
例如flex提供了actionscript的button类,这个类定义了flex的button控件,你在mxml中,可以这样创建一个button控件
<mx:Button label="Submit"/>
当你使用mxml标签声明一个控件的时候,你创建了一个这个空间类的实例。这条mxml语句创建了一个button对象,并且初始化这个button空间的label属性为字符串“submit”.一个mxml标签与和它对应的actionscript类的类文件中使用同样的命名规范。
在mxml标签中使用id属性
mxml标签中有一个可选的id属性,这个属性的取值在整个mxml文件中必须唯一。如果一个标签含有id属性,你可以在actionscript文件中引用这个对象,
<?xml version="1.0"?>
<!-- mxml/UseIDProperty.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:VBox>
<mx:TextInput id="myText" text="Hello World!" />
<mx:Button id="mybutton" label="Get Weather" click="writeToLog();"/>
</mx:VBox>
<mx:Script>
<![CDATA[
private function writeToLog():void {
trace(myText.text);
}
]]>
</mx:Script>
</mx:Application>
这段代码会使mxml编译器自动生成一个public变量叫做myText,这个变量是一个textInput实例的引用。这个自动生成的变量可以让你在actionscript中,方便的访问组件的实例。你可以在任何acitonscript文件或script块中,使用id来应用这个textInput空间的实例。通过引用一个组件的实例,你可以修改这个组建的属性,调用它的方法。因为每一个id值在一个mxml文件中是唯一的,一个文件中所有的对象又是一个命名空间的一部分,你可以使用这个对象的父对象加.符号来访问这个对象。
使用xml命名空间
在一个xml文档中,标签会被分配到一个命名空间中,命名空间可以使你在一个文档中,引用属于不同集合的xml标签。
在mxml标签中的xmlns属性指定了一个xml的命名空间,使用默认的命名空间可以不用使用前缀。使用一些额外的标签,需要指定一个标签的前缀并且指定一个命名空间。例如,下面这个<mx:Application>标签指定了mxml命名空间中的标签使用mx:这个前缀。这个mxml命名空间的url是http://www.adobe.com/2006/mxml。
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
xml命名空间使你可以使用不在mxml命名空间中的用户自定义标签。下面的例子演示了一个使用了CustomBox用户标签的应用,命名空间的值containers.boxes.*指定了这个名叫CustomBox的mxml组件在containers/boxes目录下。
<?xml version="1.0"?>
<!-- mxml/XMLNamespaces.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:MyComps="containers.boxes.*"
>
<mx:Panel title="My Application"
paddingTop="10"
paddingBottom="10"
paddingLeft="10"
paddingRight="10"
>
<MyComps:CustomBox/>
</mx:Panel>
</mx:Application>
containers/boxes是存放应用文件的目录的子目录,或者是在flex-config.xml中声明过的actionscript源文件的路径的子目录。如果在这两个地方都可以找到对应的文件,flex优先使用存放应用文件的目录的子目录下的对应的文件。前缀的名称是任意的,但是你怎么声明前缀的,在使用用户自定义标签的时候,就要那样给你的标签加前缀。当使用的组件在一个swc文件中的时候,这个swc文件就相当于一个目录。一个swc文件对于flex组件来说就是一个归档文件(压缩文件)。这样,flex开发人员可以很简单的使用swc文件。
分享到:
相关推荐
《FLEX3完全参考手册》是一本专门为自学者设计的全面教程,旨在帮助读者深入理解和掌握Adobe Flex 3这一强大的富互联网应用程序(RIA)开发框架。Flex 3是Adobe AIR平台的一部分,允许开发者构建功能丰富的、交互性...
Flex是Adobe公司开发的一种用于构建富互联网应用程序(RIA)的技术框架,它主要基于ActionScript和MXML两种语言。本教程是针对Flex初学者设计的,旨在帮助他们理解并掌握Flex的基础知识,包括MXML和ActionScript的...
- **ActionScript 3.0**:一种强大的面向对象编程语言,Flex 3主要使用此语言来编写业务逻辑和实现复杂的应用程序功能。 - **UI 组件**:Flex 3提供了一系列丰富的UI组件,如按钮、文本框、列表、树形控件等,这些...
《企业应用FLEX开发实战》是一本专注于使用Adobe FLEX进行企业级应用程序开发的实践教程。本书涵盖了从基础到高级的各个层面,旨在帮助开发者掌握FLEX技术在实际项目中的应用,提升软件开发效率和质量。书中内容分为...
Flex 3 是 Adobe 开发的一款用于构建富互联网应用程序(RIA)的框架,它基于ActionScript 3.0和Flash Player运行环境。这份“Flex 3 基本操作帮助手册”是初学者入门Flex开发的重要参考资料,包含了丰富的实例和详细...
总结,使用Flex 4.5开发Android应用程序可以借助其强大的UI组件库、良好的编程模型和对原生API的访问能力,实现高效、跨平台的移动应用开发。虽然现在Flex可能不再是主流的Android开发工具,但了解其工作原理和优势...
- 《Flex完全自学手册》这本书可能涵盖了Flex的基础知识、组件使用、数据绑定、网络通信、动画效果、AIR应用开发等内容,是学习Flex的全面指南。 - 光盘内容可能包含书中示例代码、额外的练习项目和可能的Flex SDK...
Flex中文参考手册是一份极其宝贵的资源,尤其对于那些致力于 Rich Internet Application(RIA)开发的IT专业人士而言。Flex是由Adobe公司推出的用于构建富交互式应用程序的开源框架,它基于ActionScript编程语言和...
Flex是Adobe公司开发的一种开源框架,用于构建富互联网应用程序(RIA),主要基于ActionScript 3编程语言和Flash Player或Adobe AIR运行时环境。本篇内容将深入探讨“Flex第一步——基于ActionScript 3”,这对于...
Flex是Adobe公司开发的一种用于创建富互联网应用程序(RIA)的框架,主要基于ActionScript和MXML。本资源“Flex中文帮助手册大全”是一份全面的文档集合,旨在为开发者提供在使用Flex进行软件开发时所需的指导和参考...
精通Flex网络开发技术》是一本专注于教授如何使用Adobe Flex进行网络应用开发的书籍,特别强调了与ActionScript、JavaScript以及AJAX的整合。这本书的目标读者是初学者,旨在帮助他们快速掌握Flex的基本概念和技术,...
Flex是一种用于构建富互联网应用程序(RIA)的开放源代码框架,主要基于ActionScript和MXML。本手册详细介绍了Flex的各个方面,包括基础概念、开发环境的搭建、界面组件的使用、数据绑定、事件处理以及与服务器的...
Flex是Adobe开发的一个开源框架,用于构建富互联网应用程序(RIA),它结合了MXML和AS3,提供了声明式和编程式的开发方式。 首先,让我们理解MXML和AS3的关系。MXML是一种标记语言,主要用于描述用户界面布局和组件...
3. **Flex SDK**:Flex软件开发工具包包含了编译Flex应用所需的所有工具,包括Flex Builder(集成开发环境IDE)、编译器和Flex框架库。理解如何安装和使用Flex SDK是学习Flex的第一步。 4. **Flex Component ...
《Flex完全自学手册24》是一本专注于Adobe Flex技术的深度学习资料,旨在帮助读者全面掌握Flex编程,提升在富互联网应用(Rich Internet Applications,RIAs)开发中的技能。Flex是一种用于构建交互式、高性能的Web...
Flex开发环境配置涉及两个主要的...配置好Flex开发环境后,开发者便可以开始创建、编译和调试Flex应用程序,利用Flex的强大功能来构建富互联网应用(RIA)。熟悉并掌握这些配置步骤,对于高效地进行Flex开发至关重要。
Flex4是一个基于ActionScript 3.0和Flash Player的开发平台,它提供了MXML和AS3两种编程语言,使得UI设计和业务逻辑分离,大大提高了开发效率。与之前的Flex版本相比,Flex4引入了全新的Spark组件架构,提供了更灵活...