- 浏览: 136222 次
- 性别:
- 来自: 北京
文章分类
最新评论
[Alternative]
【可替换】
标明此类可以被参数中的类替换,版本号说明发生替换的版本。
[Alternative]和[Deprecated] 不同。如果是【不建议使用】的类,以后的版本可能不可用。而带有【可替换】标签的类
在以后的版本中仍然可用,只是标明有别的类可以用来替换。 例如MX Button就被标记了[Alternative]。
[Alternative(replacement="packageAndClassName", since="versionNum")]
这段代码需要放在类的定义之前。
[ArrayElementType]
【数组元素类型】
要使得Flex MXML 编译器对数组元素进行类型检查,需要使用[ArrayElementType]标签来确定该数组许可的类型。
[ArrayElementType("String")]
public var newStringProperty:Array;
注意:MXML 编译器检查MXML 代码中数组的正确使用情况,而不检查AS代码中数组的使用情况。
<MyComp:MyTypedArrayComponent>
<MyComp:newStringProperty>
<fx:Number>94062</fx:Number>
<fx:Number>14850</fx:Number>
<fx:Number>53402</fx:Number>
</MyComp:newStringProperty>
</MyComp:MyTypedArrayComponent>
如果用户在标签中输入的是字符串,那么编译器会报语法错误。
参数可以是AS的任意数据类型,例如 String,Number,class或interface。但是必须使用全名,包括package。
[Bindable]
如果某个属性是某个数据绑定表达式的源时,Flex会在源属性变化时自动复制源属性的值到目标属性。为了让Flex进行这
种复制操作,必须使用[Bindable]元数据标签,并且源属性需要派发事件。
例1:
[Bindable]
public var minFontSize:Number = 5;
例2:
[Bindable("textChanged")]
public function get text():String {
return myText;
}
例3:
public function set text(t : String):void {
myText = t;
dispatchEvent( new Event( "textChanged" ) );}
如果你省略了事件名,Flex会自动创建"propertyChange"事件。
如果你把某个属性作为数据绑定源,那么Flex不止监视该属性的变化,还监视导向该属性的属性链的变化。
整个属性链(包含链中最终的目标属性)被称为“绑定属性链”。
<first>{firstName.text}</first>
这个例子中,属性链包含firstName和其text属性。
你应该在该属性链中的任何有名称的属性变化时派发事件。如果该属性被标记为[Bindable],Flex编译器会代你派发。
在某些情况下,绑定不会像预期的那样自动执行:
1,当改变一个dataProvider属性中的整个项时。
dataProvider[i] = newItem
2,当某个带有绑定标签的属性的子属性改变时。
[Bindable]
var temp;
// Binding is triggered:
temp = new Object();
// Binding is not triggered, because label not a bindable property
// of Object:
temp.label = foo;
在这个例子中,绑定遇到的问题是temp是个Object。有三种方式可以解决这个问题。
a,Preinitialize the Object。 预初始化对象。
b,为temp分配一个ObjectProxy;ObjectProxy的所有属性都是可绑定的。
c,使temp成为带有label可绑定属性的强类型对象。
3,当绑定的属性是Flash Player自动刷新的属性时,例如mouseX 。
如果绑定的目标是UIComponent类,它的executeBindings()方法执行所有绑定。
所有的container和control,包括Repeater组件,都扩展了UIComponent类。它们的executeChildBindings()方法会同样的执行类型为UIComponent的子项的绑定。所有的容器都继承自Container类。
绑定没有按预期执行时,你可以使用这个方法。 当某个不会触发绑定的改变发生时,在代码中加上一句,例如executeChildBindings()这个方法,就可以更新用户界面。 然而,你应该只在绑定确实不会自动触发时,才使用executeBindings()方法。
http://www.adobe.com/devnet/flex/articles/databinding_pitfalls.html
这篇文章对绑定讲解的很细致。
[DefaultProperty]
定义组件在MXML文件中使用时的默认属性名称。
例如:
这样定义后
// Define the default property.
[DefaultProperty("defaultText")]
public class TextAreaDefaultProp extends TextArea {
}
就可以这样使用
<MyComp:TextAreaDefaultProp>Hello</MyComp:TextAreaDefaultProp>
[Deprecated]
类或者类元素被标记为[Deprecated]标明该类或属性已被废弃并且不推荐在当前版本中使用。不过该类或类元素仍然可以
工作,但编译器会发出警告。
mxmlc命令行编译器支持show-deprecation-warnings编译选项。当为true时,如果你使用了deprecated的元素,编译器会
发出deprecation警告。默认值为true。
将[Deprecated]标签插入到属性、方法或类定义之前会将其标记为deprecated。例如:
[Deprecated("string_describing_deprecation")]
[Deprecated(message="string_describing_deprecation")]
[Deprecated(replacement="string_specifying_replacement")]
[Deprecated(replacement="string_specifying_replacement", since="version_of_replacement")]
[Event], [Effect] 和 [Style] 也支持deprecation:
[Event(... , deprecatedMessage="string_describing_deprecation")]
[Event(... , deprecatedReplacement="change2")]
[Event(... , deprecatedReplacement="string_specifying_replacement",
deprecatedSince="version_of_replacement")]
[Effect]
此标签定义了组件在MXML状态下的效果属性名称及触发该效果的事件,你可以通过这个属性给该组件分配一种动态效果。
动态效果总是伴随着触发它的事件。该事件可能是鼠标点击事件、获得焦点事件或可见事件。动态效果是指在一段时间发
生的可视或可听的变化。
一般在类定义之前或在<fx:Metadata>标签内定义[Effect]标签。
[Effect(name="eventNameEffect", event="eventName")]
// Define event corresponding to the effect trigger.
[Event(name="darken", type="flash.events.Event")]
// Define the effect.
[Effect(name="darkenEffect", event="darken")]
class ModalText extends TextArea {
...
}
<fx:Metadata>
[Event(name="darken", type="flash.events.Event")]
[Effect(name="darkenEffect", event="darken")]
</fx:Metadata>
[Embed]
http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7fce.html
Imports JPEG, GIF, PNG, SVG, and SWF files at compile time. Also imports image assets from SWC files.
This is functionally equivalent to the MXML @Embed syntax, as described in Embedding assets.
[Event]
用此标签定义组件在MXML状态下的事件。一般在类定义之前或在<fx:Metadata>标签内定义[Event]标签。
[Event(name="eventName", type="package.eventType")]
如
[Event(name="myEnableEvent", type="flash.events.Event")]
public class MyComponent extends UIComponent
{
...
}
或
<fx:Metadata>
[Event(name="myEnableEvent", type="flash.events.Event")]
</fx:Metadata>
[Exclude]
让Flash Builder标签检查忽略该类元素。
Omits the class element from the Flash Builder tag inspector.
[Exclude(name="label", kind="property")]
[ExcludeClass]
让Flash Builder标签检查忽略该类。等同于ASDoc中的@private标签。
Omits the class from the Flash Builder tag inspector. This is equivalent to the @private tag in ASDoc when applied to a class.
[HostComponent]
用此标签确定Spark 皮肤类的宿主组件。例如:
<Metadata>
[HostComponent("spark.components.Button")]
</Metadata>
加了这个标签,Flex会为此皮肤类创建hostComponent属性。你可以通过这个属性在皮肤类内部获取宿主组件实例的公共成员。例如,在Button 皮肤内,你可以得到Button的样式的属性。
[IconFile]
用此标签定义组件在Flash Builder中的Insert栏中的图标的文件名。
支持PNG, GIF, JPEG
[IconFile("MyButton.png")]
public class MyButton extends Button
{
...
}
[Inspectable]
此标签为你的组件的属性定义了编码提示信息。规则如下:
* 组件所有的public属性都会出现在编码提示和Flash Builder属性监测器中。如果你想为该属性添加额
外的信息,例如枚举值或代表一个文件路径的String属性,就为该属性添加[Inspectalbe]标签及信息。
* 组件的编码提示和属性监测器公用同样的数据。
* AS组件的编码提示并不需要metadata,因此你总是能看到符合当前作用范围的属性提示。Flash
Builder使用public/protected/private和static这些关键字来控制属性的作用范围及可显示的编码提示。
此标签后必须紧跟属性变量声明或其set和get方法:
[Inspectable(attribute=value[,attribute=value,...])]
property_declaration name:type;
[Inspectable(attribute=value[,attribute=value,...])]
setter_getter_declarations;
category |
String |
将属性归纳入FB用户界面的属性监测器中的子类别中。默认类别是 "Other" . 可以归类为"Common" , "Effects" , "Events" , "Layout Constraints" , "Size" , "Styles" , "Text", or "Other" . |
defaultValue |
String or Number |
设置属性的初始值。默认值为属性的定义值。 |
enumeration |
String |
为属性定义一组以逗号分隔的合法值。该属性只可以取这些值。例如:item1 ,item2 ,item3 . 注意中间没有空格。这些值会出现在代码提示及属性检测器中。如果你定义了Boolean类型变量,FB会自动显示true和false,不需要你自己设置。 |
environment |
String |
environment=none :可检测属性不允许出现;environment=Flash:只有Flash Builder可用; (environment=MXML :只有Flex可用,Flash Builder也不可用。 |
format |
String |
当编辑该属性值时使用的编辑器类型。 例如,对于Number类型的属性,你可以设置format="Color"来让FB在你设置属性值时打开颜色编辑器。一般的值为"Length" , "Color" , "Time" , "EmbeddedFile" 和"File" . |
listOffset |
Number |
设定List值中的默认索引。 Specifies the default index into a List value. |
name |
String |
设定属性的显示名称。例如,FontWidth。如果没设定,会使用属性名,例如_fontWidht. |
type |
String |
指定类型的指定器。如果省略,会使用属性的类型。 下列值可取:
如果类型是Array,你必须列出Array的可用值。 |
variable |
String |
指定此参数绑定的变量。 |
verbose |
Number |
表明此属性只有在用户指明包含verbose(详细的)属性时才在FB用户界面中出现。如果未设定,则默认显示该属性。 |
例如:
[Inspectable(defaultValue=true, verbose=1, category="Other")] public var myProp:Boolean;
[InstanceType]
大概主要用于创建模板组件。
// Define a deferred property for the top component. [InstanceType("mx.controls.Label")] public var topRow:IDeferredInstance;
[NonCommittingChangeEvent]
此标签定义了一种折中事件,这种事件不会引起Flex数据验证。通常用于经常变化但又不需要每次都进行数据验证的属性。
例如,你给一个TextInput组件的text属性绑定了某个验证器。text属性会在每次键盘输入事件时改变,但你只是希望在用户按下Enter键或移除焦点时进行数据验证。此类型事件可以使你分派改变事件但不出发验证。
[NonCommittingChangeEvent("event_name")]
下例中,组件在每次用户键盘输入时都分派change事件,但这个change事件并没有引发数据绑定或数据验证。当用户完成数据输入并点击Enter键时,组件广播valueCommit事件来出发数据绑定和数据验证。
[Event(name="change", type="flash.events.Event")]
class MyText extends UIComponent {
...
[Bindable(event="valueCommit")]
[NonCommittingChangeEvent("change")]
function get text():String {
return getText();
}
function set text(t):void {
setText(t);
// Dispatch events.
}
}
[RemoteClass]
用此标签将类注册到Flex,Flex会在用AMF格式序列化类实例时保留类型信息。需要在类定义之前插入此
标签。
还可以在客户端程序中用此标签代表某个服务端Java对象:
[RemoteClass(alias=" ")]
这样可以创建直接映射到Java对象的AS对象。需要在alias值中赋予Java类的全名。
[RichTextContent]
如果一个属性是String类型,编译器会自动试着把其MXML中的值转为String类型。如果属性类型是*、
Object或Array,编译器在默认情况下会试图将其转换为适当的数据类型。使用此标签可以让编译器始终
将该属性MXML中的值转为String。需要在属性定义前插入此标签。
[RichTextContent]
例如,spark.components.TextArea 和 spark.primitives.RichText类的content属性被作为Object输入
。但如果使用了此标签,那些值就会始终被作为String类型。
数据绑定语法中的花括号{},at符号@都对此标签有效。
[SkinPart]
不解。。。
Define a property of a component that corresponds to a skin part. For more information, see SkinPart
metadata tag.
[SkinState]
定义皮肤中的状态。
Defines the view states that a component’s skin must support. For more information, see SkinState metadata
tag.
[Style]
定义样式。
插入到类定义前或MXML中的<fx:Metadata>中。
Defines the MXML property for a style property for the component. For more information on using the [Style]
metadata tag, see Style metadata tag.
[SWF]
在AS中定义main application的属性。在MXML中一般在<s:Application>标签中定义。
Specifies attributes of the application when you write the main application file in ActionScript. For more
information, see SWF metadata tag.
[Transient]
不解...
Identifies a property that should be omitted from data that is sent to the server when an ActionScript
object is mapped to a Java object using [RemoteClass]. For more information, see Transient metadata tag.
发表评论
-
Flex从swf中加载资源和类
2013-12-10 09:37 759需要为直播播放器做几个新的样式,想将每个样式的布局XML和 ... -
swf加载swf的一些问题
2013-03-20 17:31 7131,swfParent 加载 swfChild,如果有交互, ... -
NetStream appendBytes 一点经验
2013-03-20 16:25 2601最近在做基于 NetStream ... -
【译】HTML5还需要什么才能击败Flash(part 2)
2012-04-01 17:53 0What else does HTML5 need to ... -
【译】HTML5还需要什么才能击败Flash(part 1)
2012-04-01 16:36 1084What else does HTML5 need to de ... -
AS 函数作用域、函数闭包、限界方法
2012-03-30 10:21 1469作用域链(scope chain): 任何时候函数开始 ... -
在AS3中自定义全局方法
2012-03-29 11:17 947http://en.flash-ripper.com/2007 ... -
Flex Class object(类对象)构成、traits和prototype
2012-03-29 10:59 1560先贴张图: 每个矩形代表一个对象。CA代表class ... -
使用flex sdk3.6的asdoc遇到的问题及解决方法
2012-03-26 10:24 1953想要对一个组件项目导出asdoc。组件的sdk是3.6,但使用 ... -
UIComponent添加Image不显示
2012-03-18 17:32 1012在UIComponent中添加Image组件,图片不显示。 ... -
Flex优化技巧
2012-03-30 09:46 898http://www.jb51.net/article/182 ... -
Flex中多个柱状图和折线图的问题
2012-02-28 17:53 1985做了个柱状图和折线图的混合图表,2根3D的柱子,6根折线,遇到 ... -
AdvancedDatagrid的dataprovider属性
2012-02-22 10:15 812高级dataGrid的dataProvider的set方法里并 ... -
Sprite的宽高设置及Flex组件的混淆
2012-02-02 10:23 1690由于Bitmap和InteractiveObject同级,都继 ... -
Flex SDK3.5 PollingChannel.as 存在内存泄露bug的一种解决方法
2011-12-31 15:32 1295bug见前面的一篇文章: http://xltank.ite ... -
TextInput的ErrorString样式
2011-10-25 13:08 901http://blog.minidx.com/2008/05/ ... -
【转】Flash Player的 mm.cfg文件
2011-10-08 17:17 5293http://jpauclair.net/mm-cfg-sec ... -
Flex trace() 保存路径
2011-10-08 17:11 1088http://help.adobe.com/en_US/fle ... -
给ItemRenderer传参
2011-08-18 17:19 1511给ItemRenderer传递初始参数,可以根据参数灵活生成I ... -
AdvancedDatagrid改变行的颜色
2011-08-16 15:25 1617最早我尝试重写AdvancedDatagrid的drawRow ...
相关推荐
在Flex与AS3(ActionScript 3)开发中,元数据标签(Metadata Tags)是一种重要的语法结构,用于向编译器提供有关类或成员的额外信息。这些标签能够帮助编译器优化代码、提供更强大的功能,并允许开发者实现自定义...
《metadata公共元数据项目源码解析》 在IT领域,数据是驱动业务发展的核心要素,而元数据(Metadata)则是理解和管理数据的关键。本篇文章将深入探讨“metadata公共元数据项目”的源码,帮助读者理解元数据的重要性...
在Java编程中,元数据(Metadata)是指关于数据的数据,它提供有关文件、数据库记录、类、方法等的附加信息,但不直接构成这些实体的实际内容。元数据可以帮助理解和处理这些对象,例如,图片的元数据可能包含拍摄...
元数据管理系统,通常被称为MDM(Metadata Management System),在企业信息化建设中扮演着至关重要的角色。元数据,简单来说,就是关于数据的数据,它描述了数据的来源、含义、格式、关系等信息,有助于企业更好地...
元数据,作为“关于数据的数据”,在信息技术领域扮演着至关重要的角色。本文将深入探讨元数据的概念、格式、工具以及其在数字化图书馆中的应用体系,旨在全面解析这一关键概念。 ### 元数据的本质与定义 元数据的...
movie_metadata(电影数据)
defiens fifteen matadata elements for resource description in a cross-dsciplinary information environment.
《Metadata API(元数据API)》是针对微软.NET Core运行时(CLR)元数据的创建和导入的API规范。这个API是非托管的,主要用于编译器、加载器和其他需要快速访问元数据、并且在遍历关系(如类层次结构)或操作集合(如...
当我们使用`[Bindable]`元数据标签标记一个类的成员变量时,Flex编译器会自动为这个变量生成相关的访问器(getter和setter)。例如,在提供的代码段中,`list`变量被标记为`[Bindable]`: ```actionscript public ...
元数据管理是现代企业信息化建设的核心部分,Informatica SuperGlue作为一款强大的元数据管理平台,帮助企业管理和理解数据的生命周期,提升数据治理的效率和质量。元数据是描述数据的数据,它不仅包括基本的数据...
10. `<classification>` 元素:该元素包含了元数据的分类信息,例如数据的分类、标签等。 将元数据转换为 XML 格式 ------------------------- 在 ArcGIS 中,将元数据转换为 XML 格式可以使用 ArcGIS 提供的 API...
例如,`MetadataExtractor.IO.ImageMetadataReader` 类可以用来读取图像文件,而`Directory.GetTags()` 方法可以获取特定元数据目录下的所有标签。 对于更复杂的场景,如处理多层嵌套的元数据或者自定义解析规则,...
标签:drewnoakes、metadata、extractor、中英对照文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明...
DatabaseMetaData和ResultSetMetaData就是两个常用的获取数据库元数据相关信息的接口,本文只讲解DatabaseMetaData接口获取元数据的方法。 文章地址:http://blog.csdn.net/chen_zw/article/details/18816599
空间数据的元数据 一、元数据概念与分类 二、空间数据元数据所涉及的概念 三、空间数据元数据的标准 四、空间数据元数据的获取与管理 五、空间数据元数据的应用 一、元数据概念与分类 元数据(Metadata) “meta”是...
1. **DCMI(Dublin Core Metadata Initiative)**:都柏林核心元数据元素集是最基础的元数据标准之一,包含15个核心元素,如标题、创作者、日期等,适用于各种类型的信息资源。 2. **MARC(Machine-Readable ...
这个工具包含两个核心组件:`meduautil-1.0.jar`和`metadata-extractor-2.3.1.jar`,它们都是Java编写的库文件,可以方便地集成到各种Java应用程序中来读取和解析多媒体文件的元数据。 首先,我们来看`metadata-...
8. **元数据标签** 元数据还可以作为标签使用,通过"Tags & Notes"功能,用户可以为页面添加预定义的术语标签,增加内容的可发现性。 9. **元数据功能激活** 在某些情况下,可能需要手动激活“分类功能”(功能ID...
该库提供了一些常用的基类,用于管理类,方法和属性的元数据。 元数据可以来自许多不同的来源(注释,YAML / XML / PHP配置文件)。 元数据类用于抽象出该源,并为所有源提供通用接口。 用法 该库提供了三个类,您...