您的位置:首页 > 其它

Creating Own Meta Data In Flex

2008-12-17 16:54 267 查看
原文:http://blog.orangeflash.eu/?p=45To create your own meta data, in Flex you have to set compiler option: -keep-as3-metadataHere is small example -Index.mxml:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:Script>
<![CDATA[
private var metaData:MetaDataExample = new MetaDataExample();

private function displayDescription():void
{
textArea.text = metaData.description;
}
]]>
</mx:Script>
<mx:TextArea width="100%" height="100%" id="textArea"/>
<mx:Button label="Describe" click="displayDescription()"/>
</mx:Application>

MetaDataExample.as:
package
{
import flash.utils.*;
public class MetaDataExample
{
public function MetaDataExample()
{
}

public function get description():String
{
return describeType(this).toString();
}

[Orange(size="very big", isTasty="Yes Yes Yes Yes!")]
public function get prop():String
{ return "hello"; }
public function set prop(value:String):void
{ }
}
}
and finaly meta-config.xml:
<?xml version="1.0"?>
<flex-config xmlns="http://www.adobe.com/2006/flex-config">
<compiler>
<keep-as3-metadata>
<name>Orange</name>
</keep-as3-metadata>
<keep-generated-actionscript>true</keep-generated-actionscript>
<source-path>
<path-element>.</path-element>
</source-path>
</compiler>

<output>C:/Program Files/Adobe/Flex/Flex SDK 2/bin/Index.swf</output>
</flex-config>
Now you simply compile your application with 
-load-config+="meta-config.xml"
. And you have your own meta data in Flex.P.S. in order to check it you can use flash.utils.describeType() method, here is what i’ve got:
<accessor name="prop" access="readwrite" type="String" declaredBy="MetaDataExample">
<metadata name="Orange">
<arg key="size" value="very big"/>
<arg key="isTasty" value="Yes Yes Yes Yes!"/>
</metadata>
</accessor>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: