- 浏览: 717066 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (389)
- flex (150)
- java (55)
- flex_sharedObject (4)
- iphone/android (7)
- red5 (4)
- blazeds (19)
- ajax (3)
- flex&java (9)
- 聊天室 (2)
- flex的问题 (1)
- game (8)
- flex_xml (1)
- flex组件学习 (2)
- JGroups (1)
- 中转站 (2)
- ruby (7)
- flex_js (5)
- C/C++ (14)
- perl (2)
- db (13)
- air (10)
- hibernate (8)
- flash_flex_as_3d (2)
- struts (4)
- dwr (8)
- freemarker (2)
- AS (22)
- 工具 (6)
- js_jquery_ext_yui (4)
- .net (1)
- C# (1)
- 前端 (1)
最新评论
-
136900923:
您好,您的代码我不是很懂,我想跟您交流一下,我的qq邮箱:13 ...
hibernate做无限极菜单树如此简单 -
fykyx521:
两个同一个功能
flex_flush_Socket 安全沙箱解决 -
ustb:
你上下两个代码类之间没关系
flex_flush_Socket 安全沙箱解决 -
u010656335:
...
flex发送QQ表情 -
u010656335:
flex发送QQ表情
as3 元数据标签的意义解析(Flex 2 Metadata Tags)
http://bvu.iteye.com/blog/315323
英文原文:Flex
2 Metadata
Tags
原文地址:http://mxdj.sys-con.com/read/361239.htm
原文作者:Rich Tretola(作者是everythingflex.com的创建人以及IFBIN的贡献者之一)
文章来自: 闪无忧(www.5uflash.com) 详文参考:http://5uflash.com/Flex
-AIR/Flexziliao/1479.html
感谢译者:Dreamer,http://www.zhuoqun.net/
Flex
2 中的元数据标签
【http://www.newflash3d.com
---flash3D先锋队:北京贝武易科技公司】
有疑问请联系我QQ:363596350
——告诉编译器如何编译
虽然多数Flex
开发者都使用过[Bindable]标签,但是很多人都不知道这个
标签的作用甚至不知道该标签为何物。[Bindable]就是所谓的元数据标签。元数据标签是一种特殊的标签,它在代码中的作用就是向编译器提供如何编译
程序的信息。实际上,这些标签并没有被编译到生成的SWF文件中,而只是告诉编译器如何生成SWF文件。文档中列出的元数据标签共有12个,本文将讲解这
些元数据标签的定义并给出使用它们的示例,在看完这篇文章之后,你就会明白应该在何时何处在你的Flex
2应用程序中使用元数据标签了。
[ArrayElementType]
实际上,定义一个数组通常来说是一件很平常的事情,因为数组中的元素可以是任何类型的。不过,使用ArrayElementType元数据标签可以让你定义数组元素的数据类型。下面的例子展示了如何使用[ArrayElementType]:
程序代码
- [ArrayElementType( "String" )]
- public var arrayOfStrings:Array;
- [ArrayElementType("Number" )]
- public var arrayOfNumbers:Array;
- [ArrayElementType("mx.core.UIComponent" )]
- public var arrayOfUIComponents:Array;
- [ArrayElementType( "String" )]
- public var arrayOfStrings:Array;
- [ArrayElementType("Number" )]
- public var arrayOfNumbers:Array;
- [ArrayElementType("mx.core.UIComponent" )]
- public var arrayOfUIComponents:Array;
[ArrayElementType("String")] public var arrayOfStrings:Array; [ArrayElementType("Number")] public var arrayOfNumbers:Array; [ArrayElementType("mx.core.UIComponent")] public var arrayOfUIComponents:Array;
[Bindable]
Bindable元数据标签是最经常用到的一个元数据标签,因为它使程序组件之间的数据同步变得很容易。Bindable可以用来绑定简单数据类
型、类、复杂数据类型以及函数。绑定数据的时候,你必须先使用元数据标签定义一下数据,正如Listing 1中所示的那样。图1是Listing
1的代码运行结果。
Bindable也可以用来绑定到事件。Listing
2展示了如何使用getter和setter函数将一个属性绑定到一个事件上。这个例子中有一个叫做phoneNumber的私有变量,还有一个公有的
setter和getter函数。使用Bindable标签将这个getter方法绑定到了一个叫做phoneNumberChanged的事件上,只要
数据发生改变setter方法就会分派phoneNumberChanged事件。通过使用setter方法,可以在数据赋予私有变量之前对其进行操作。
在这个例子中,数据只有在长度大于等于10的时候才会被格式化。当phoneNumberChanged事件被分派的时候,第二个TextInput组件
会被更新,因为他的text属性绑定到了phoneNumber变量上。
图2和图3显示了Listing 2代码的运行结果。
图2
图3
[DefaultProperty]
DefaultProperty元数据标签用来将一个单一属性设定为某个类的默认属性。它允许在一个容器标签内设定属性,而不用定义属性的名字。
一个简单的例子就是一个自定义Button类。Listing
3展示了一个简单的Button类,它将label属性设定为了DefaultProperty。
Listing 4展示了label属性是如何在自定义Button标签中作为一个字符串定义的。
[Embed]
Embed元数据标签用来导入图片到程序。可以通过两种方式使用Embed。你可以将图片嵌入到ActionScript中并将其指派给一个变量(如同下面代码中的第一个例子),或者你也可以将图片直接指派给组件的属性(使用下面代码中的第二个例子所示的语法规则)。
例1:
程序代码
- [Embed(source= "myIcon.gif" )]
- [Bindable]
- public var myIcon:Class;
- <mx:Button label="Icon Button 1" icon= "{myIcon}" />
- <mx:Button label="Icon Button 2" icon= "{myIcon}" />
- [Embed(source= "myIcon.gif" )]
- [Bindable]
- public var myIcon:Class;
- <mx:Button label="Icon Button 1" icon= "{myIcon}" />
- <mx:Button label="Icon Button 2" icon= "{myIcon}" />
[Embed(source="myIcon.gif")] [Bindable] public var myIcon:Class; <mx:Button label="Icon Button 1" icon="{myIcon}"/> <mx:Button label="Icon Button 2" icon="{myIcon}"/>
例2:
- <mx:Button label= "Icon Button 1" icon= "@Embed(source=myIcon.gif')" />
- <mx:Button label="Icon Button 2" icon= "@Embed(source=myIcon.gif')" />
- <mx:Button label= "Icon Button 1" icon= "@Embed(source=myIcon.gif')" />
- <mx:Button label="Icon Button 2" icon= "@Embed(source=myIcon.gif')" />
<mx:Button label="Icon Button 1" icon="@Embed(source=myIcon.gif')"/> <mx:Button label="Icon Button 2" icon="@Embed(source=myIcon.gif')"/>
上面这两个例子产生的结果是一样的。创建myIcon类的好处是,它在一个类中只定义一次并可以绑定到程序中的多个组件。
[Event]
Event元数据标签用来声明那些被自定义类分派的事件。将这个元数据标签添加到类定义中之后,你就可以在MXML标签中添加事件处理函数来初始
化该自定义类。Listing 5创建了一个自定义Button类,每当它的label属性改变的时候就会分派一个事件。Listing
6所显示的主程序文件初始化了这个自定义Button并创建了事件处理函数,该函数将新的labe属性值赋给了一个TextArea组件以显示当前发生的
更改。
图4显示了Listing 5 和 Listing 6中的代码运行结果。
图4
[Effect]
Effect元数据标签用来定义一个自定义效果,当某个事件发生的时候该效果会被分派。这个示例可以基于前面Event的例子来创建,通过简单地
更改ButtonLabel类(Listing 7)中的一行代码,就定义了一个效果,该效果可以在MXML标签中直接使用(Listing
。
[IconFile]
IconFile是用来定义一个jpg,gif或者png文件的文件名的,它在你的自定义类中作为图标来使用。[Embed]元数据标签可以用来
嵌入图片、SWF文件、音乐文件以及视频文件等,而IconFile则只是用来嵌入用来作为自定义类图标的文件。下面是一个IconFile的例子:
程序代码
- [IconFile( "icon.png" )]
- public class CustomButton extends Button
- {
- }
- [IconFile( "icon.png" )]
- public class CustomButton extends Button
- {
- }
[IconFile("icon.png")] public class CustomButton extends Button { }
[Inspectable]
在使用Flex
Builder
2的时候,你可能会希望某些自定义组件的属性在代码提示和属性检查器(property
inspector)中显示,Inspectable元数据标签就是用来定义那些属性的。Listing
9展示的例子定义了一个inspectable的ccType变量,它定义了Visa为默认值、Credit
Card为类别并将取值范围定义为包含了Visa, Mastercard, Discover, 和 American Express的枚举。
图5展示了当将组件添加到程序中的时候所显示的代码提示。
图5:
图6与上面展示的是同样的代码,但是这次是设计视图,所以我们能看到属性检查器。你可以看到属性ccType的类别为Credit Card,它的所有可选的值都在下拉列表中。
图6:
[InstanceType]
当在一个模板对象中声明一个像IDeferredInstance这样的变量时,InstanceType元数据标签就用来声明对象的类型。下面是InstanceType的用法:
程序代码
- [InstanceType( "package.className" )]
- [InstanceType( "package.className" )]
[InstanceType("package.className")]
[NonCommittingChangeEvent]
NonCommittingChangeEvent元数据标签在某个特定事件发生的时候可以防止变量在事件发生的过程中被更改。Listing
10展示了它是如何工作的。一个名为s的字符串类型的私有变量被绑定到了名为ti2的TextInput组件上。另外一个id为ti1的
TextInput组件在它的text发生更改的时候就会将s的值设置为它的text属性的值。另外,当triggerBinding
事件被分派的时候,附加在s变量上的Binding元数据标签就会进行绑定。只有在Enter键在ti1
TextInput组件中被按下时才会分派triggerBinding事件。
[RemoteClass]
RemoteClass可以用来将一个ActionScript类绑定到一个Java类或一个ColdFusion
CFC。这样做可以自动转换数据类型。下面的例子将包com.mydomain中的名为MyClass的ActionScript类绑定到了同一个包中名
为MyClass的Java类:
程序代码
- package com.mydomain {
- [Bindable]
- [RemoteClass(alias="com.mydomain.MyClass" )]
- public class MyClass {
- public var id: int ;
- public var myText:String;
- }
- }
- package com.mydomain {
- [Bindable]
- [RemoteClass(alias="com.mydomain.MyClass" )]
- public class MyClass {
- public var id: int ;
- public var myText:String;
- }
- }
package com.mydomain { [Bindable] [RemoteClass(alias="com.mydomain.MyClass")] public class MyClass { public var id:int; public var myText:String; } }
[Style]
Style元数据标签用来为组件定义自定义样式属性的。只需要简单地将Sytle元数据标签添加到类的定义当然,然后就可以使用getSytle
方法获取它的值了。Listing 11 和 12中的例子定义了两个样式,分别为borderColor
和fillColor,它们的数据类型都是uint。当类初始化的时候这两个样式就会在标签中被设定。代码中覆写了updateDisplayList函
数,用自定义的样式画了一个圆形边框并将其填充。
图7展示了Listing 11 和 Listing 12中代码运行的结果。
图7:
现在你应该会有这样的感觉了:“喔,现在我知道在哪里可以使用它们了”或者“嗯,我想我会在新的项目中尝试使用这些元数据标签”。如果你没有,那么你可能需要回过头去再看一遍这篇文章。OK,我想说的是Adobe Flex
小组提供给我们的元数据标签不只是非常的强大,可以让我们扩展或自定义我们要做的东西,而且它还非常易于使用。通过使用它们,仅仅几行代码就可以完成一大堆事情。如果不使用这些标签,你会发现在Flex
2中实现一些东西是很辛苦的。
代码集合(Listing 1-12):
- //Listing 1 A simple use of [Bindable]
- <?xml version="1.0" encoding= "utf-8" ?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- backgroundColor="#FFFFFF" >
- <mx:Script>
- <![CDATA[
- [Bindable]
- private var me:String= "Rich Tretola" ;
- ]]>
- </mx:Script>
- <mx:Panel title="Simple Binding" width= "500" height= "90"
- paddingTop="10" paddingLeft= "10" paddingRight= "10" paddingBottom= " 10" layout= "horizontal" >
- <mx:Label text="{me}" />
- </mx:Panel>
- </mx:Application>
- //Listing 2 Using [Bindable] with getters and setters
- <?xml version="1.0" encoding= "utf-8" ?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" >
- <mx:Script>
- <![CDATA[
- private var _phoneNumber:String = ?;
- // Bind getter function to phoneNumberChanged event
- [Bindable(event="phoneNumberChanged" )]
- public function get phoneNumber():String {
- return _phoneNumber;
- }
- // Setter method.
- public function set phoneNumber(value:String): void {
- if (value.length< 10 ) {
- _phoneNumber = value;
- } else {
- _phoneNumber = phoneFormatter.format(value);
- }
- // Create and dispatch event
- var eventObj:Event = new Event(損honeNumberChanged");
- dispatchEvent(eventObj);
- }
- ]]>
- </mx:Script>
- <mx:PhoneFormatter id="phoneFormatter"
- formatString="(###) ###-####" validPatternChars="#-()
- ?>
- <mx:Panel title="Bind with Getters and Setters"
- width="500" height= "90"
- paddingTop="10" paddingLeft= "10" paddingRight= "10" paddingBottom= " 10" layout= "horizontal" >
- <mx:TextInput id="ti1" change= "phoneNumber=ti1.text"
- maxChars="10" restrict= "0-9" />
- <mx:TextInput id="ti2" text= "{phoneNumber}" />
- </mx:Panel>
- </mx:Application>
- //Listing 3 Custom Button class named MyButton
- package
- {
- import mx.controls.Button;
- [DefaultProperty(搇abel")]
- public class MyButton extends Button
- {
- }
- }
- //Listing 4 Using the MyButton class wih [DefaultProperty]
- <?xml version="1.0" encoding= "utf-8" ?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- xmlns:comps="*" >
- <comps:MyButton>
- <mx:String>Test</mx:String>
- </comps:MyButton>
- </mx:Application>
- //Listing 5 Custom ButtonLabel class using [Event]
- package
- {
- import mx.controls.Button;
- import flash.events.Event;
- // Define the custom event
- [Event(name="labelChanged" , type= "flash.events.Event" )]
- public class ButtonLabel extends Button {
- // property to hold label value
- private var _myLabel:String;
- // public setter method
- public function set myLabel(s:String): void {
- _myLabel = s;
- this .label = s;
- // Create and dispatch custom event
- var eventObj:Event = new Event(搇abelChanged");
- dispatchEvent(eventObj);
- }
- }
- }
- //Listing 6 Using the ButtonLabel class with the labelChanged [Event]
- <?xml version="1.0" encoding= "utf-8" ?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- xmlns:comps="*"
- backgroundColor="#FFFFFF" >
- <mx:Script>
- <![CDATA[
- import mx.controls.Alert;
- import flash.events.Event;
- // method to handle custom event
- public function labelChanged(eventObj:Event): void {
- myTA.text= myTA.text + 揬n"+ eventObj.target.label;
- myTA.verticalScrollPosition = myTA.verticalScrollPosition +
- 20 ;
- }
- ]]>
- </mx:Script>
- <mx:Panel title="Event Sample" width= "500" height= "275"
- paddingTop="10" paddingLeft= "10" paddingRight= "10" paddingBottom= " 10" layout= "absolute" >
- <mx:TextInput id="buttonLabelTI"
- change="myButton.myLabel=buttonLabelTI.text" x= "10" y= "9" />
- <!--Instantiate custom class and define method to handle label-
- Changed event-->
- <comps:ButtonLabel id="myButton" labelChanged="labelChanged(event)
- ;"
- x="10" y= "39" />
- <mx:TextArea id="myTA" width= "200" height= "200" x= "249" y= "10" />
- </mx:Panel>
- </mx:Application>
- //Listing 7 Add the Effect metadata tag
- ...
- // Define the custom event
- [Event(name="labelChanged" , type= "flash.events.Event" )]
- [Effect(name="labelChangedEffect" , event= "labelChanged" )]
- public class ButtonLabel extends Button {
- ...
- //Listing 8 Add labelChangedEffect to the Component
- Instantiation MXML Tag
- <comps:ButtonLabel id="myButton" labelChanged= "labelChanged(event);"
- labelChangedEffect="myEffect" x= "10" y= "39" />
- //Listing 9 Custom component with [Inspectable] defined
- <?xml version="1.0" encoding= "utf-8" ?>
- <mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml" >
- <mx:Script>
- <![CDATA[
- [Inspectable(defaultValue="Visa" ,
- enumeration="Visa,Mastercard,Discover,American Express"
- category="Credit Card" type= "String" )]
- public var ccType:String;
- ]]>
- </mx:Script>
- </mx:HBox>
- //Listing 10 Using [NonCommittingChangeEvent]
- <?xml version="1.0" encoding= "utf-8" ?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- backgroundColor="#FFFFFF" >
- <mx:Script>
- <![CDATA[
- import flash.events.Event;
- private var eventObj:Event;
- [Bindable(event="triggerBinding" )]
- [NonCommittingChangeEvent(揷hange")]
- private var s:String;
- private function triggerBinding(): void {
- eventObj = new Event(搕riggerBinding");
- dispatchEvent(eventObj);
- }
- ]]>
- </mx:Script>
- <mx:Panel title="NonCommittingChangeEvent Sample" width= "500"
- height="90"
- paddingTop="10" paddingLeft= "10" paddingRight= "10" paddingBottom= " 10" layout= "horizontal" >
- <mx:TextInput id="ti1" change= "s=ti1.text" enter= "triggerBinding()"
- />
- <mx:TextInput id="ti2" text= "{s}" />
- </mx:Panel>
- </mx:Application>
- //Listing 11 Custom Class CustomCircle using [Style] tags
- package
- {
- import mx.core.UIComponent;
- [Style(name="borderColor" ,type= "uint" ,format= "Color" ,inherit= "no" )]
- [Style(name="fillColor" ,type= "uint" ,format= "Color" ,inherit= "no" )]
- public class CustomCircle extends UIComponent {
- public function CustomCircle(){
- super ();
- }
- override protected function updateDisplayList(unscaledWidth:Number,
- unscaledHeight:Number):void {
- super .updateDisplayList(unscaledWidth, unscaledHeight);
- graphics.lineStyle(1 , getStyle(揵orderColor"), 1.0 );
- graphics.beginFill(getStyle(揻illColor"),1.0 );
- graphics.drawEllipse(0 , 0 , 100 , 100 );
- }
- }
- }
- //Listing 12 Using CustomCircle and assigning custom style properties
- <?xml version="1.0" encoding= "utf-8" ?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- xmlns:comps="*"
- backgroundColor="#FFFFFF" >
- <mx:Panel title="Style Sample" width= "200" height= "200"
- paddingTop="10" paddingLeft= "10" paddingRight= "10" paddingBottom= " 10" layout= "horizontal" >
- <comps:CustomCircle borderColor="#000000" fillColor= "#FF0000" />
- </mx:Panel>
- </mx:Application>
发表评论
-
转深入理解Flash的沙箱 – Security Domains
2014-01-22 09:35 837一篇很经典的进阶文章,国外牛人的分享,清晰明了,图文并茂,适 ... -
flex 很有用的东东!
2010-06-17 23:50 1263网上找了好久,原来API中就有! -
flex出现的一些问题
2010-04-08 12:19 16631.kingnarestyle.swf和flexlib 的Su ... -
flex 样式工作原理【转】
2010-04-08 12:09 1323http://hi.baidu.com/ls_mcx/blog ... -
在FlexBuilder3中使用Actionscript3进行元编程
2010-03-11 19:15 1034http://flash.9ria.com/thread-46 ... -
Error: No class registered for interface mx
2010-02-01 09:36 1244http://www.gold98.net/blog/arti ... -
Flash 视频(FLV)编码,转换,录制,播放方案一网打尽
2010-01-16 18:34 2018http://www.htmlit.com.cn/post/8 ... -
FLEX中使用FLVPlayback控件.
2010-01-16 18:29 1396http://www.cnblogs.com/xxcainia ... -
flex 继承Application及xml命名空间
2009-12-30 18:43 1520<?xml version="1.0" ... -
flex Repeater effert加效果
2009-12-15 17:25 1520package cn.ishion.component { ... -
学习自定义组件---ConstomButton
2009-12-14 15:06 1829效果只是让Button动了下, 上传了flash源文件 p ... -
flex编译生成的As代码
2009-12-09 18:30 1312new flexProject ->起名叫 test ... -
flex自定义preloader
2009-12-09 17:43 1913package cn.ishion.component { ... -
flex自定义程序 preloader 加载多个资源
2009-12-09 02:05 2284package cn.ishion.component { ... -
Flex Builder编译错误An internal build error has occurred的解决方法
2009-12-05 16:44 3212原文:http://as3blog.com/resources ... -
flex uicomponent.addChild(Button) Button不显示
2009-12-04 19:23 2142设置下Button的宽度和高度就行了 var ui:U ... -
as3 xls导出excel乱码问题解决办法
2009-12-04 11:37 3391http://blog.csdn.net/Baijinwen/ ... -
FlashDevelop配置Flex4(gumbo)环境
2009-12-04 10:27 3053http://www.flexrain.cn/fl ... -
flex gooogle code as3xls导出数据到excel
2009-12-03 19:16 2358var ex:ExcelFile=new ExcelFile ... -
Flex坐标系统及转换
2009-12-02 22:10 3098http://flash.9ria.com/thread-40 ...
相关推荐
SWC是Adobe Flex的库文件格式,它包含了编译后的ActionScript代码和相关的元数据,可以被其他Flex或Flash项目引用。 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于...
### Flex AS3 元数据标签综合解析 #### 一、元数据标签概述 在Flex与AS3(ActionScript 3)开发中,元数据标签(Metadata Tags)是一种重要的语法结构,用于向编译器提供有关类或成员的额外信息。这些标签能够帮助...
SWC是Adobe Flex Compiler生成的库文件格式,它包含了ActionScript代码、资源、元数据等,可以被其他Flex项目作为依赖引用,以实现代码复用和模块化开发。 在Flex中,进行JSON操作主要依赖于`...
而"catalog.xml"可能是这个库的清单文件,列出了库中所有可用的组件和它们的元数据。这两个文件在实现上述导出Excel功能时并不是直接相关的,但它们可能用于构建Flex Air应用的用户界面,比如创建用于导出数据的按钮...
而`catalog.xml`可能是Flex项目或库的元数据文件,描述了库中的组件和资源。 9. **学习资源**: 开发者可以参考Google Maps API官方文档、Adobe Flex官方文档,以及各种在线教程和社区资源来学习如何将这两者结合。 ...
- 反编译的代码可能与原始源代码有所不同,因为编译过程会进行优化,可能丢失某些元数据或注释。 - 代码质量不保证:反编译的代码可能不是最优或最清晰的,因为它是从二进制格式转换而来的。 总之,Flash和Flex反...
1. **ActionScript类**:这些是使用AS3编写的类,用于处理Web服务的调用、数据解析和用户界面的更新。它们可能包括自定义的WebService类,这些类扩展了Flex提供的BaseAsyncResponder类,用于异步调用Web服务。 2. *...
而"catalog.xml"可能是Flex项目的资源清单文件,它包含了关于项目元数据的信息,如库中的组件、类或资源的引用。通过解析这个XML文件,Flex编译器能够了解如何组织和编译项目,包括哪些库需要被链接以及它们之间的...
- `Flex2StyleExplorer.mxml`:主应用程序文件,包含Flex项目的元数据和MXML代码。 - `ListRenderer.mxml`:可能是一个自定义列表渲染器的示例,用于展示如何自定义组件显示。 - `www.pudn.com.txt`:可能是下载...
开发者可以通过解析此XML文件获取SDK的相关元数据,这对于管理和集成SDK到构建环境中至关重要。 "include"目录包含了一系列的头文件,这些文件是ActionScript编译器和Flash Player需要的,它们定义了各种类库和接口...
2. **元数据驱动**:使用元数据来描述工作流的结构和行为,元数据可以被解析以生成相应的执行代码。 3. **组件化**:工作流中的每个步骤或环节都可以视为一个独立的组件,这些组件可以复用,降低了开发复杂性。 三...
SWC文件是Adobe Flash和Flex的二进制库格式,包含了类定义、资源和其他元数据。在本例中,“library.swf”包含Flex Mate框架的实现,可以直接导入到项目中,以避免在源代码中包含框架的所有源文件。 “catalog.xml...
而`catalog.xml`则可能是库项目的元数据文件,用于描述SWF文件中包含的组件和类。 总结起来,"Flex4之DataGrid四个的示例【客户端和服务器端】"这一主题涵盖了使用Flex4的DataGrid组件展示和处理数据的基本技巧,...
3. **SWC文件**: SWC是Flex的库文件格式,可以包含ActionScript类、资源、元数据和库元数据。开发者可以将SWC文件作为库引入到他们的项目中,以便重用代码和组件。 4. **百度地图API**: 百度地图提供了丰富的API...
- `model`和`valueObjects`:这些可能是数据模型和值对象,负责存储和传递相册数据,例如图片元信息。 3. Flex相册的工作流程: - 用户启动应用,`PhotoGallery.mxml`加载并解析XML配置文件,获取图片列表。 - ...
- `.project`:Eclipse项目配置文件,定义了项目的类型和其他元数据。 - `html-template`:可能是Flex应用程序的HTML包装器模板,用于在浏览器中运行SWF文件。 - `.settings`:Eclipse项目的首选项存储目录,包含了...
属性信息存储在`attributes`属性中,这是一个Object类型的键值对集合,用来存储图形的各种元数据。然而,在实际应用中,特别是需要将这些属性展示在DataGrid控件中时,会遇到一些挑战,因为`attributes`对象不能直接...
HTML部分提供了关于Flex应用的一些元数据,包括版权信息、版本检查以及对Flash Player的引用。这部分内容对于理解Flex应用的工作原理和环境配置有帮助,但与全屏功能的实现关系不大。 ### 实现全屏的注意事项 1. *...
5. **URLVariables和URLRequest**:配置上传请求时,可能需要添加额外的参数,如用户ID或其他元数据。这可以通过URLVariables对象实现,并附加到URLRequest对象。 Java端(UpLoadServer)是文件上传的接收者,负责...
总的来说,“Rss.zip_flex”项目提供了一个学习Flex开发RSS订阅器的实例,涵盖了从网络通信到数据解析,再到UI展现等多个关键环节,对于理解和实践Flex编程具有很大的帮助。通过深入研究该项目的源代码,开发者可以...