小編給大家分享一下Flex Dataprovider和Data概念是什么,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
專注于為中小企業提供成都網站設計、成都網站制作服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業靈臺免費做網站提供優質的服務。我們立足成都,凝聚了一批互聯網行業人才,有力地推動了上千企業的穩健成長,幫助中小企業通過網站建設實現規模擴充和轉變。
Flex Dataprovider和Data概念
1、Flex Dataprovider
在AdobeActionScript3.0里面的定義如下:
要查看的數據集,此屬性允許您將大多數類型的對象用作數據提供程序。如果將Flex Flex Dataprovider屬性設置為Array,則會將其轉換為ArrayCollection。如果將該屬性設置為XML對象,則會將其轉換為僅包含一個項目的XMLListCollection。如果將該屬性設置為XMLList,則會將其轉換為XMLListCollection。如果將該屬性設置為實現IList或ICollectionView接口的對象,則可直接應用此對象。受轉換操作的影響,在您獲取Flex Dataprovider屬性時,該屬性值將始終為ICollectionView,所以此值不一定是您設置的對象類型。如果要修改數據提供程序中的數據,則了解以下行為非常重要:可能不會檢測對原始數據所做的更改,但將檢測對從Flex Dataprovider屬性獲取的ICollectionView對象所做的更改。默認值為null.此屬性可用作數據綁定的源。
◆上面那一大堆的東西其實就說明以下幾點:
a、凡是具有Flex Dataprovider的組件,都可以將Array、XML等內容作為數據源。
b、將這些作為數據源的內容“自動”綁定并顯示在這些控件上面。
所以通常的做法,當Flex獲取了外部數據后,可以將其直接賦值為Flex Dataprovider,然后通過一些設定,就可以在這些組件上面顯示數據了。
關于這個例子我就不在這里復述了,大家可以自行去找一下,或者直接看這里的內容:http://livedocs.adobe.com/flex/3_cn/mx/controls/ComboBox.html#includeExamplesSummary
2、itemRenderer(項目渲染器)及其Data屬性。
itemRenderer的作用就是可以自定義一些組件的項目顯示效果,例如我們熟知的Combobox、List、DataGrid等都具有這樣的屬性,也就是說,我們可以利用itemRenderer來改善ComBoBox里面的下拉的顯示效果。當然,List、DataGrid也是這樣的。
當ComboBox中自定義了一個渲染器后,同時使用Flex Dataprovider的方式綁定了一個數據源,這個時候,如何與我們自定義的渲染器里面的item發生作用呢?就是使用data方式。
也就是說,Flex Dataprovider可以綁定數據到UI、如果這個組件使用了自定義渲染器,那么就可以使用data.XXX的方式獲取到Flex Dataprovider里面的數據。
okay,以上介紹的兩個知識點是關于Flex組件的數據處理能力,其中Flex Dataprovider可以把Array、XML等內容作為數據源直接綁定并顯示到UI上面,而itemRenderer里面的data是實現組件與其渲染器之間的數據處理。
◆下一篇的內容是關于Flex與后臺進行通訊的常見的幾種方式:HTTPService、WebService、Remote等方式,而通過這幾種方式可以輕松的讓一些例如Java、C#、Python、Ruby、PHP等主流編程語言為Flex所服務:)
附加:
關于Flex Dataprovider、itemRenderer、data的具體用法有些抽象,因此我特此列舉一個例子來說明一下。
這是一個HorizontalList組件,而且其中它的itemRenderer=ToolBoxRenderer,想讓我們看一下HorizontalList的片段代碼:
<mx:HorizontalListidmx:HorizontalListid="myHorizontalList"itemRenderer="ToolBoxRenderer"> <mx:dataProvider> <mx:Array> <mx:Objecttooltipmx:Objecttooltip="rubber"styleName="rubber"language="{_language}"/> </mx:Array> </mx:dataProvider> </mx:HorizontalList>
然后是ToolBoxRenderer的片段代碼:
<mx:Canvaswidthmx:Canvaswidth="30"height="30"> <mx:Button width="30"height="30" toolTip="{data.tooltip}" styleName="{data.styleName}"/> </mx:Canvas>
◆再讓我們看看itemRenderer是如何與我們今天這個主題聯系起來的。
1、在myHorizontalList中定義了一個Flex Dataprovider,通過代碼可以看出是一個Array類型的變量,然后將其賦值給Flex Dataprovider。這個時候,其實就應該將數據顯示到myHorizontalList上面了,這也就是Flex Dataprovider的用處。
2、在Flex Dataprovider包含的Array中,定義如下的結構:<mx:Objecttooltip="rubber"styleName="rubber"language="{_language}"/>
3、我們不僅設定了Flex Dataprovider,還是同時設定了itemRenderer,即為ToolBoxRenderer。
4、在ToolBoxRenderer里面,定義了一個Button,同時我們使用類似于這樣的方式可以取得Flex Dataprovider里面的數據:toolTip="{data.tooltip}"
看完了這篇文章,相信你對“Flex Dataprovider和Data概念是什么”有了一定的了解,如果想了解更多相關知識,歡迎關注創新互聯行業資訊頻道,感謝各位的閱讀!
新聞名稱:FlexDataprovider和Data概念是什么
分享地址:http://m.kartarina.com/article40/gecseo.html
成都網站建設公司_創新互聯,為您提供網站內鏈、網站策劃、企業建站、品牌網站制作、、搜索引擎優化
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯