`

flex自定义元数据metadata

    博客分类:
  • flex
阅读更多

原文:http://bbs.airia.cn/ActionScript/thread-2898-1-1.aspx

http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&productId=2&postId=11907

http://jacwright.com/blog/72/using-your-own-custom-metadata-in-as3/

[翻译]在Flex中自定义元数据(Metadata)标签(类似[Event],[Bindable])

原文看这里

1. 配置编译器

对于新的Flex项目:在"additional compiler arguments(附加的编译器参数)"中添加 "-keep-as3-metadata = Meta1,Meta2"。注意,使用逗号来分隔不同的元数据标签。


提 示:如果项目是ActionScript Library,则添加"keep-as3-metadata"作为附加的参数,然后将编译好的SWC载入项目,直接使用定义的元数据标签即可,无需再 在"additional compiler arguments"中设置附加参数。

2.使用元数据标签

示例:

package
{
[Meta2(param1 = "param 1 value")]
public class TestClass
{

    [Meta1(param1 = "param 1 value", param2 = "param 2 value")]
    public var test1:String;


    [Meta2(paramA = "param 1 value", paramB = "param 2 value")]
    public function get test2():String
    {
        return null;
    }

    public function set test2(val:String):void
    {
    }

    [Meta1(param1 = "param 1 value")]
    public function someMethod():void
    {
    };

}
}

3. 在运行时使用元数据
只需调用describeType(TestClass)并使用E4X在结果中查找所需的数据即可

<type name="TestClass" base="Class" isDynamic="true" isFinal="true" isStatic="true">
<extendsClass type="Class"/>
<extendsClass type="Object"/>
<accessor name="prototype" access="readonly" type="*" declaredBy="Class"/>
<factory type="TestClass">


 <metadata name="Meta2">
   <arg key="param1" value="param 1 value"/>
 </metadata>



 <extendsClass type="Object"/>


 <method name="someMethod" declaredBy="TestClass" returnType="void">
   <metadata name="Meta1">
     <arg key="param1" value="param 1 value"/>
   </metadata>
 </method>



 <variable name="test1" type="String">
   <metadata name="Meta1">
     <arg key="param1" value="param 1 value"/>
     <arg key="param2" value="param 2 value"/>
   </metadata>
 </variable>



 <accessor name="test2" access="readwrite" type="String" declaredBy="TestClass">
   <metadata name="Meta2">
     <arg key="paramA" value="param 1 value"/>
     <arg key="paramB" value="param 2 value"/>
   </metadata>
 </accessor>



</factory>
</type>

分享到:
评论

相关推荐

    flex as3 元数据标签综合

    在Flex与AS3(ActionScript 3)开发中,元数据标签(Metadata Tags)是一种重要的语法结构,用于向编译器提供有关类或成员的额外信息。这些标签能够帮助编译器优化代码、提供更强大的功能,并允许开发者实现自定义...

    flex 绑定元数据

    这些元数据可以用于自定义组件的行为或者外观。 在Flex中使用元数据绑定资源的示例 在本文提供的代码示例中,展示了如何将多种图标绑定到Flex中的Tree组件上,从而改变Tree组件中不同状态(闭合或打开)时的图标...

    Flex中采用Flex-config.xml进行命令行的编译

    通过`&lt;metadata&gt;`标签,可以添加自定义元数据,如作者、版权信息等。 4. **库路径和依赖项**: `&lt;library-path&gt;`标签用于指定库文件的路径,例如引入外部库或SWC文件,这对于项目依赖管理至关重要。 5. **错误和...

    flex_array.rar_flex

    描述中的"Number of bytes left in base struct flex_array, excluding metadata"提到了flex_array结构体中剩余的字节数,不包括元数据。这表明flex_array结构体不仅存储了数组元素,还可能包含了额外的信息,比如...

    Flex基础培训

    - 定义事件名称和类型:首先在自定义组件中使用元数据标签`[Event]`定义事件的名称和类型。 - 实例化事件对象:接着创建该事件类型的实例。 - 派发事件:使用`dispatchEvent`方法将事件发送出去。 - 处理事件:...

    flex笔记 flex笔记 flex笔记

    - 元数据(`&lt;mx:metadata&gt;`)用于为组件提供额外的信息或配置选项。 #### ActionScript 1. **网络通信**: - Flex使用ActionScript来处理网络通信。例如,`&lt;mx:HTTPService&gt;` 标签可以用于发起HTTP请求。 - 在...

    Flex4 Spark皮肤

    在这段代码中,首先定义了按钮的四种状态(`up`、`over`、`down` 和 `disabled`),然后通过`[HostComponent("spark.components.Button")]`元数据指定该皮肤适用于 `Button` 组件。接下来,定义了按钮的主要视觉元素...

    Flex 编译参数选项

    5. **元数据**:通过`-metadata`参数,开发者可以添加自定义元数据到编译的SWF中,这在某些情况下可以用于提供额外的元信息或者自定义行为。 6. **主题**:Flex支持主题,可以通过`-theme`参数指定应用程序使用的...

    flex IMXMLObject

    这些setter方法通常由Flex的元数据(metadata)注解指定,如`[Inspectable]`或`[SkinPart]`,以使它们在MXML中可用。 在深入研究`MyComponent`的源码时,我们可以学习如何自定义组件的行为,包括添加事件监听器、...

    flex4 样式

    - **HostComponent元数据**:每个SkinClass都需要通过元数据标签来指定其HostComponent,即该皮肤适用的组件类型。 ```xml &lt;fx:Metadata&gt; &lt;![CDATA[ [HostComponent("spark.components.Button")] ]]&gt; &lt;/fx:...

    FLEX4 皮肤制作教程

    - **元数据**:`&lt;fx:Metadata&gt;`中的`[HostComponent]`属性指定了该皮肤对应的Flex控件,这里是`spark.components.Button`。 - **UI元素布局**: - 使用`&lt;s:Ellipse&gt;`绘制圆形背景,并通过`&lt;s:fill&gt;`和`&lt;s:stroke&gt;...

    flex 设置背景音乐

    - **元数据**:用于声明自定义事件或其他类型的元信息。 - **脚本**:包含ActionScript代码,用于定义组件的行为。 3. **变量声明与初始化**: ```actionscript private var channel:SoundChannel; private ...

    flex4.5学习笔记

    - **结构**: 包含状态(`&lt;s:states&gt;`)定义、元数据(`&lt;fx:Metadata&gt;`)以及界面元素定义。 - **组件定义**: 通过`&lt;s:Group&gt;`、`&lt;s:Rect&gt;`等元素定义界面布局与样式。 - **皮肤应用**: 在应用中通过`skinClass`属性...

    parsley官方资料详解

    **本地化**方面,Parsley通过[ResourceBinding]元数据与资源文件绑定属性,与Flex的ResourceManager集成,同时也适用于Flash程序的本地化需求。第10章涵盖了本地化的具体实现。 **扩展性**是Parsley的一大优点,它...

    Parsley中文指南

    Parsley支持多种配置方式,包括元数据(Metadata)、MXML、XML或ActionScript。由于其出色的扩展性和灵活性,Parsley在Adobe技术领域内得到了广泛的认可。 #### 特性列表 **1.1 IOC容器** Parsley作为一款优秀的IoC...

    Flex 测试项目,图片压缩、上传、图片裁剪,Module测试,国际化

    5. `metadata.xml` 通常是元数据文件,包含关于项目、作者或组件的信息。 6. `assets` 这个文件可能是文件夹,包含了项目中使用的各种资源,如图片、音频、视频等。 综合以上信息,这个Flex测试项目是一个具有图片...

    parsley框架(中文版)

    - **依赖注入**:IOC容器的关键功能,Parsley的依赖注入可以通过AS3元数据标签([Inject])、MXML或XML来声明属性、方法或构造函数的依赖。这简化了对象之间的关系,并减少了硬编码的依赖。 - **对象生命周期管理**...

    swiz框架1.0压缩包

    4. **元数据(Metadata)**:Swiz框架利用元数据注解,允许开发者在类和方法上添加自定义属性,从而实现如服务注册、依赖注入等高级功能,增强了代码的可读性和可维护性。 5. **服务定位器(Service Locator)**:...

Global site tag (gtag.js) - Google Analytics