日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
技術(shù)分享 在ActionScript中如何定義Flex數(shù)據(jù)綁定

你對在ActionScript 中定義Flex數(shù)據(jù)綁定是否了解,這里和大家分享一下,通過使用bindProperty() 方法可以讓我們創(chuàng)建一個到用變量實現(xiàn)的屬性的數(shù)據(jù)綁定,或者用bindSetter()方法創(chuàng)建一個到用方法實現(xiàn)的屬性的Flex數(shù)據(jù)綁定。

站在用戶的角度思考問題,與客戶深入溝通,找到裕華網(wǎng)站設(shè)計與裕華網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:做網(wǎng)站、成都網(wǎng)站設(shè)計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名注冊、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務覆蓋裕華地區(qū)。

在ActionScript 中定義Flex數(shù)據(jù)綁定

通過使用mx.binding.utils.BindingUtils能夠在ActionScript中定義綁定。這個類定義了幾個靜態(tài)方法,通過使用bindProperty() 方法可以讓我們創(chuàng)建一個到用變量實現(xiàn)的屬性的數(shù)據(jù)綁定,或者用bindSetter()方法創(chuàng)建一個到用方法實現(xiàn)的屬性的Flex數(shù)據(jù)綁定。

(1)在MXML 與在ActionScript 定義Flex數(shù)據(jù)綁定的區(qū)別

編譯期在MXML 中定義Flex數(shù)據(jù)綁定與在運行期在ActionScript 中定義Flex數(shù)據(jù)綁定有一些不同之處:
◆不能在由bindProperty()或者bindSetter()方法定義綁定表達式中引入ActionScript 代碼。相反,使用bindSetter()方法可以指定一個在綁定發(fā)生時調(diào)用的
方法。
◆ 不能在由ActionScript 中定義的綁定表達式中引入E4X 表達式。
◆ 在由the bindProperty()或者bindSetter()方法定義的Flex數(shù)據(jù)綁定表達式的屬性鏈中不能引入函數(shù)或者數(shù)組元素。更多信息見Working with bindable property chains.
◆同運行時使用bindProperty()或者bindSetter()定義的Flex數(shù)據(jù)綁定相比,MXML 編譯器有更好的警告和錯誤檢查支持。

(2)范例:在ActionScript 中定義Flex數(shù)據(jù)綁定

下面的例子是用bindSetter()建立了一個Flex數(shù)據(jù)綁定。bindSetter()方法的參數(shù)設(shè)置如下:
◆ 源(source) 對象
◆ 源(source) 屬性名
◆ 當源(source)屬性變化被調(diào)用的方法。
下面的范例中,當向TextInput 控件中輸入文本時,文本會被轉(zhuǎn)換為大寫形式并拷貝給TextArea
控件:

 
 
 
  1.  
  2.  
  3.  
  4.  
  5. import mx.binding.utils.*;  
  6. import mx.events.FlexEvent;  
  7. // Method called when myTI.text changes.  
  8. public function updateMyString(val:String):void {  
  9. myTA.text = val.toUpperCase();  
  10. }  
  11.  
  12. public function mySetterBinding(event:FlexEvent):void {  
  13. var watcherSetter:ChangeWatcher =  
  14. BindingUtils.bindSetter(updateMyString, myTI, "text");  
  15. }  
  16. ]]> 
  17.  
  18.  
  19. text="Hello Setter" /> 
  20. initialize="mySetterBinding(event);"/> 
  21.  

 (3)定義綁定觀察者 (watchers)

Flex 有個mx.binding.utils.ChangeWatcher 類,可以用這個類來定義一個Flex數(shù)據(jù)綁定觀察者。通常,F(xiàn)lex數(shù)據(jù)綁定觀察者在綁定發(fā)生時激活一個事件監(jiān)聽器??砂凑障旅娴姆独褂?br /> ChangeWatcher 的watch()即可建立一個Flex數(shù)據(jù)綁定觀察者:

 
 
 
  1.  
  2.  
  3. initialize="initWatcher();"> 
  4.  
  5. import mx.binding.utils.*;  
  6. import mx.events.FlexEvent;  
  7. import mx.events.PropertyChangeEvent;  
  8. public var myWatcher:ChangeWatcher;  
  9. // Define binding watcher.  
  10. public function initWatcher():void {  
  11. // Define a watcher for the text binding.  
  12. ChangeWatcher.watch(textarea, "text", watcherListener);  
  13. }  
  14. // Event listener when binding occurs.  
  15. public function watcherListener(event:Event):void {  
  16. myTA1.text="binding occurred";  
  17. // Use myWatcher.unwatch() to remove the watcher.  
  18. }  
  19. ]]> 
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  

上面的范例中,為Flex數(shù)據(jù)綁定觀察者定義了事件監(jiān)聽器,在這個事件監(jiān)聽器中使用了單個參數(shù)來包含事件對象。事件對象的數(shù)據(jù)類型由被觀察的屬性所決定。每個可綁定的屬性會不同的
事件類型以及相關(guān)的事件對象。有關(guān)確定事件類型的更多信息見“使用Bindable 元數(shù)據(jù)標記”。

【編輯推薦】

  1. Adobe Flex提供三種方法指定Flex數(shù)據(jù)綁定
  2. 術(shù)語匯編 Flex數(shù)據(jù)綁定概述
  3. Flex數(shù)據(jù)綁定的四種方式
  4. 解析Flex全屏模式設(shè)置方法
  5. Flex內(nèi)存泄露解決方法和內(nèi)存釋放優(yōu)化原則

文章標題:技術(shù)分享 在ActionScript中如何定義Flex數(shù)據(jù)綁定
網(wǎng)頁URL:http://m.5511xx.com/article/dhgdpjs.html