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

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

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
FlexBuilder教程教你如何創(chuàng)建自定義控件

本文和大家重點(diǎn)討論一下FlexBuilder教程如何創(chuàng)建自定義組件,主要從三個(gè)方面向大家介紹,在創(chuàng)建組件之前需要做的一個(gè)首要決定是,使用as還是mxml。

創(chuàng)建自定義組件

1、Flex是由as類結(jié)構(gòu)實(shí)現(xiàn)的。

FlexBuilder教程中類結(jié)構(gòu)包含了組件類,管理類,數(shù)據(jù)服務(wù)類,和其他用來實(shí)現(xiàn)flex功能的類。下圖展示的是類結(jié)構(gòu)中flex可視化組件的一部分,關(guān)于控制和容器的部分:

所有的可視化組件繼承自UIComponentas類。Flex中非可視化組件也是依靠as類結(jié)構(gòu)來實(shí)現(xiàn)的。大部分的非可視化組件都是Validator,F(xiàn)ormatter,或者是Effect類。

通過使用mxml和as語言擴(kuò)展Flex類結(jié)構(gòu)來創(chuàng)建自定義的組件。組件都繼承了父類的屬性,方法,行為,風(fēng)格和效果。

通過as創(chuàng)建一個(gè)flex組件時(shí),必須繼承自一個(gè)flex類。類的名稱必須和類文件的名稱相同。子類繼承了父類的所有屬性的和方法。在mxml中使用這個(gè)組件時(shí),通過使用類名稱的標(biāo)簽來引用。例如,類名稱是myASButton,文件名則為myASButton.as,在mxml中使用標(biāo)簽來使用組件。

在通過mxml創(chuàng)建一個(gè)組建時(shí),flex編譯器將自動(dòng)的生成一個(gè)as類。mxml文件的名稱必須和as類名稱相同。同樣,在mxml中使用這個(gè)名稱標(biāo)簽來使用這個(gè)組件。

下圖展示了分別通過as和mxml創(chuàng)建的FlexButton組件的自定義組件:Button.as

 
 
 
 
  1. MyASButton.as  
  2.  
  3. package  
  4. {  
  5. publicclassMyASButtonextendsButton  
  6. {  
  7.  
  8. //Overrideinheritedmethodsandproperties.  
  9. //Definenewmethodsandproperties.  
  10. //DefinecustomlogicinActionScript.  
  11.  
  12. }  
  13. }  
  14.  
  15.  
  16.  
  17.  
  18. //Overrideinheritedmethodsandproperties.  
  19. //Definenewmethodsandproperties.  
  20. //DefinecustomlogicinActionScript.  
  21.  
  22.  
  23.  
  24.  
  25.  

 上面的兩種實(shí)現(xiàn)方法都生成了一個(gè)Button類的子類。同樣的繼承了所有的屬性,方法和button類的所有元素。都可以重寫類的屬性,方法和邏輯。

注意:父類中的變量是不能被覆蓋,但是可以覆蓋通過setter和getter方法實(shí)現(xiàn)的屬性。你可以重新設(shè)置這些變量的值。

另外,如果使用mxml創(chuàng)建組建,flex編譯器完成了創(chuàng)建一個(gè)組件的子類的大部分工作,因此使用mxml創(chuàng)建組件比用as創(chuàng)建組件更加容易。


2、決定是使用mxml還是as創(chuàng)建組件

FlexBuilder教程中在創(chuàng)建組件之前需要做的一個(gè)首要決定是,使用as還是mxml。由你需要開發(fā)應(yīng)用程序來決定你需要使用什么樣的組件。

下面是一些基本的指導(dǎo)方針:

mxml和as組件都定義了新的as類?;旧纤心苡胊s完成的自定義組件都可以通過mxml來實(shí)現(xiàn)。一般來說,對于簡單的自定義組建,例如修改已有組建的一些屬性和方法,使用mxml要比使用as方便得多。當(dāng)你在新的組件中使用了別的組建,而且需要使用flexlayout容器來進(jìn)行多個(gè)組件的布局設(shè)置,那么需要使用mxml來定義。如果你想修改某一個(gè)組件的行為,例如一個(gè)容器中子元素的布局方式,則使用as。

如果你想通過創(chuàng)建UIComponent的子類來創(chuàng)建一個(gè)全新的可視化組件,則使用as。如果你想創(chuàng)建一個(gè)全新的非可視化組件,例如formatter,validator,或者effect,則使用as。注意:FlashProfessional8是不能開發(fā)AS3.0的組件的,如果要使用AS3.0開發(fā)Flex2組件,應(yīng)該使用FlexBuilderIDE。

3、組件部署

FlexBuilder教程中在部署你的mxml或as文件的自定義組件時(shí),一般將這些文件放置在你的應(yīng)用程序的子目錄內(nèi),或者一個(gè)定義好的as類路徑下。

為了保密,你可能不希望使用源碼的形式來部署你的源文件。因此你可以使用swc文件或者共享資源庫(RSL)作為用來部署的文件。

Swc文件是Flex組件的一種集合格式。使用swc文件可以方便的在開發(fā)人員之間進(jìn)行交流,這樣你使用使用一個(gè)文件,而不是很多mxml,as文件,或者圖片和其他資源。更重要的是,swc文件中的swf已經(jīng)被編譯了,這意味著你不用看著繁雜的代碼。

Swc文件可以包含多個(gè)組件,使用PKZip打包格式將其打包在一起。你可以使用winzip,jar或者任何打包工具來打開這個(gè)文件。但是,一般來說不要直接在swc外部運(yùn)行打包在swc里面的swf文件。

創(chuàng)建swc文件,需要使用compc工具,該工具在flex安裝目錄下的bin目錄內(nèi)。compc工具可以將mxml文件,或as文件,或兩種文件一起,打包成swc文件。

要縮小你的swf格式的應(yīng)用程序的大小,有一種方式是將共享資源打包到文件外部,由client下載并保存在緩存中。這些外部職員可以在程序運(yùn)行的時(shí)候多次被使用,但是只需要從服務(wù)器傳輸?shù)絚lient端一次。這些文件就是共享資源庫(RSL)。

【編輯推薦】

  1. 解析Flexbuilder4十大新特性
  2. FlexBuilder教程中數(shù)據(jù)服務(wù)器訪問的幾種方式
  3. Flex及FlexBuilder2.0開發(fā)環(huán)境詳解
  4. FlexBuilder3.0與Eclipse3.4的***結(jié)合
  5. 學(xué)習(xí)筆記 FlexBuilder2.0中如何使用基于Lists的控件 

分享標(biāo)題:FlexBuilder教程教你如何創(chuàng)建自定義控件
本文鏈接:http://m.5511xx.com/article/dhsschh.html