我正在创建一个组件并希望像许多 flex 控件一样公开一个颜色属性,假设我有这样的简单组件,我们称之为 foo_label:
<mx:Canvas>
<mx:Script>
[Bindable] public var color:uint;
</mx:Script>
<mx:Label text="foobar" color="{color}" />
</mx:Canvas>
然后将组件添加到另一个 mxml 文件中,类似于:
<foo:foo_label color="red" />
当我编译编译器抱怨:无法从文本“红色”解析类型 uint 的值。但是,如果我使用普通标签,我可以做到
<mx:Label text="foobar" color="red">
没有任何问题,并且颜色属性仍然是 uint 类型。
我的问题是如何公开公共属性以便控制组件文本的颜色?为什么我可以使用字符串“red”作为 mx 控件的 uint 字段,但在自定义组件中似乎不能这样做,我需要做一些特别的事情吗?
谢谢。