這篇文章給大家分享的是有關如何在Flex數據綁定中使用數組的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
在Flex數據綁定中使用數組
在使用數組進行工作時,比如Array或者ArrayCollection對象,可以把數組作為Flex數據綁定表達式的源或目的。
注意:當使用數組作為綁定源時,應該使用ArrayCollection類型的數組,因為ArrayCollection類在數組或數組元素發生變化時能夠發出事件來觸發Flex數據綁定。比如,對ArrayCollection.addItem(),ArrayCollection.addItemAt(),ArrayCollection.removeItem(),以及ArrayCollection.removeItemAt()方法的調用都會觸發Flex數據綁定。
綁定到數組
通常將數組綁定給Flex控件的dataProvider屬性,下面范例說明將數組綁定用于List控件:
<?xmlversionxmlversion="1.0"?> <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"> <![CDATA[ importmx.collections.ArrayCollection; [Bindable] publicvarmyAC:ArrayCollection=newArrayCollection([ "One","Two","Three","Four"]); [Bindable] publicvarmyAC2:ArrayCollection=newArrayCollection([ "Uno","Dos","Tres","Quatro"]); ]]> <mx:Button label="ChangeElement" click="myAC[0]='modOne'"/> <mx:Button label="AddElement" click="myAC.addItem('newelement');"/> <mx:Button label="RemoveElement0" click="myAC.removeItemAt(0);"/> <mx:Button label="ChangeArrayCollection" click="myAC=myAC2"/>這個例子定義了一個ArrayCollection對象,然后將List控件的dataProvider屬性設置為對這個ArrayCollection的Flex數據綁定。當修改ArrayCollection對象中的元素,或者修改對ArrayCollection對象的引用,都會觸發Flex數據綁定。
綁定到數組中的元素
可以使用數組中的單個元素作為Flex數據綁定源,如下例所示:
<?xmlversionxmlversion="1.0"?> <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"> <![CDATA[ importmx.collections.ArrayCollection; [Bindable] publicvarmyAC:ArrayCollection=newArrayCollection([ "One","Two","Three","Four"]); [Bindable] publicvarmyAC2:ArrayCollection=newArrayCollection([ "Uno","Dos","Tres","Quatro"]); ]]> <mx:Buttonidmx:Buttonid="button1" label="ChangeElement" click="myAC[0]='newOne'"/> <mx:Buttonidmx:Buttonid="button2" label="ChangeArrayCollection" click="myAC=myAC2"/>
如果通過方括號語法[]來指定數組元素作為Flex數據綁定表達式的源,那么Flex數據綁定只在應用啟動時觸發,或者在數組或其引用被更新時觸發。當這個數組元素被更新的時候不會觸發Flex數據綁定。
但Flex數據綁定表達式中的myAC.getItemAt(0)則會在該數組元素變化時被觸發更新。因此,id為text2的Text控件在點擊button1時會被更新,而id為text1的Text控件則不會被更新。
當使用數組中的元素作為Flex數據綁定表示的源時,應當在綁定表達式中使用ArrayCollection.getItemAt()方法。
點擊button2時將myAC2拷貝給myAC,這會觸發對數組元素的所有Flex數據綁定而不論它們是如何實現的。
感謝各位的閱讀!關于“如何在Flex數據綁定中使用數組”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。