<mx:Label text="{(item1 as INewsItem).displayName}"/>
在Flex中上面的代碼中,我得到這樣的警告:Flex數據綁定問題
:數據綁定將無法檢測到分配到項目1。
爲什麼?如何解決它?
<mx:Label text="{(item1 as INewsItem).displayName}"/>
在Flex中上面的代碼中,我得到這樣的警告:Flex數據綁定問題
:數據綁定將無法檢測到分配到項目1。
爲什麼?如何解決它?
Thanks Prutswonder。
實際上物品1被聲明爲一個getter,
這樣的:
public function get item1()
所以,我不得不在前面加上這樣的:
[Bindable] public function get item1()
將顯示警告,因爲當更新item1
時,數據綁定不會自動刷新。如果您確實需要這種行爲,那麼當item1
更改時,您無法使用此數據綁定,並且必須手動更新標籤文本。
如果定義[Bindable] function get item1()
你還需要定義一個function set item1()
,否則Flex將不知道何時分派更改事件。或者你也可以手動調度change事件:
[Bindable(event="item1Change"]
public function get item1() { return ... }
每當上物品1有新的變化,你分派事件:
dispatchEvent(new Event("item1Change"));