1.mxml 支持兩種界面組件:控件和容器
控件:按鈕,下拉框,文本
容器:容器是矩形框,里面可放控件或子容器,常見容器有:
HBOX: 對(duì)子組件水平布局
VBOX:對(duì)子組件垂直布局
Grid:使用列和行對(duì)子容器布局
導(dǎo)航容器:
ViewStack:與TabNavigator 和Accordion容器一樣,每次只有一個(gè)子容器可見,默認(rèn)情況不具備導(dǎo)航機(jī)制
TabNavigator:比容器包括一個(gè)子容器集合,其中每次只顯示一個(gè)子容器,F(xiàn)lex自動(dòng)在頂部創(chuàng)建一個(gè)TabBar容器,每個(gè)選項(xiàng)卡對(duì)應(yīng)一個(gè)子容器。
Accordion:此容器包括一個(gè)子容器集合,其中每次只顯示一個(gè)子容器,與TabNavigator不同在于此容器具有多個(gè)可折疊標(biāo)題的導(dǎo)航按鈕
2.xml命名空間:
如果使用不是默認(rèn)命名空間之外的自定義組件(標(biāo)簽)時(shí),在根標(biāo)簽中添加<mx:Application xmlns=
http://www.adobe.com/2006/mxml verticalAlign="middle" horizontalAlign="center" xmlns="*" xmlns:view="mycomponents.view.*"> <view:Mycomponent/></mx:Application>
3. 數(shù)據(jù)綁定:將一個(gè)對(duì)象中的數(shù)據(jù)鏈接到另一個(gè)對(duì)象
數(shù)據(jù)綁定三種方法:使用大括號(hào){};在mxml中使用<mx:Binding>標(biāo)簽;在ActionScript中使用靜態(tài)BindingUtils;
數(shù)據(jù)綁定需要源屬性、目標(biāo)屬性和事件
4.RPC服務(wù):flex提供了三種rpc服務(wù)組件
WebService組件:提供基于soap的web service 訪問
HttpService組件:提供基于自定義數(shù)據(jù)返回的http url訪問
RemoteObject組件:提供基于AMF協(xié)議的對(duì)于java,php,asp.net的對(duì)象訪問
5.MXML 命名約定:
文件名只能用字母或下劃線開頭,其后只能包括字母數(shù)字和下劃線
文件名不能與mx命名空間中的mxml標(biāo)簽相同,其它與java命名規(guī)范相同
6.ActionScript調(diào)用控件的方法
使用id屬性直接使用
如果沒有id屬性,可以使用組件容器法調(diào)用,即getChildAt()和getChildByName()。例:
<mx:script>
<![CDATA[
import mx.controls.Alert;
import mx.controls.TextInput;
public function getText():String{
var name:String = TextInput(getChildAt(0)).name;
var text:String = TextInput(getChildByName(name)).text;
}
]]>
</mx:script>
<mx:TextInput text="hello world"/>
<mx:Button label="Get Text" click="Alert.show(getText())"/>
另一種調(diào)用組件的方法是使用關(guān)鍵字,即this["myTextInput"]
<mx:script>
<![CDATA[
import mx.controls.Alert;
import mx.controls.TextInput;
public function getText():String{
return this["myTextInput"].text;
}
]]>
</mx:script>
<mx:TextInput id="myTextInput" text="hello world"/>
<mx:Button label="Get Text" click="Alert.show(getText())"/>
posted on 2011-01-12 15:27
長(zhǎng)春語林科技 閱讀(326)
評(píng)論(0) 編輯 收藏 所屬分類:
flex