iT邦幫忙

DAY 7
9

進入Flex 3異想世界的30招系列 第 7

::進入Flex的異想世界(7):: Flex的靈魂角色-MXML(I)

前情提要:

「不過,幸好剛開始學Flex,還可以假裝它不存在...」

「Flex基本上就是ActionScript的框架...」

「既然如此,不就是要寫ActionScript嗎?為什麼可以假裝它不存在...」

真相只有一個,因為我們有MXML。

(登!登!新角色登場)
稍微了解WWW歷史發展的人,應該都知道,HTML是為了解決SGML過於複雜而推出的精簡版本,它讓標籤式的語言大為普及起來。

而後來為了更複雜的結構,以及實現讓機器能閱讀文件的理由,XML也出現了。

雖然XML比HTML難一點,但基本上標籤式的基本結構,仍然對於處理資料而言,仍然算簡單。

而MXML,其實就是一種XML語言。

所以當你要寫MXML的時候,就是打開筆記本,依照它的語法打一打,存成xxx.mxml,就可以送去編譯成swf檔了。

到這裡,你大概可以想像MXML的樣子,然而為什麼稱MXML為Flex的靈魂角色呢?

這樣說好了,我們可以說,Flex的強項,就是在建立性感、迷人的UI,就拿現場直擊Flex面貌提供的Mindomo來說,它能建立出宛如Office 2007的look & feel,並且能讓你動態拖拉一些元件,提供直覺的操作方式。

這種操作感,都是過去的Web開發難以辦到或必須花費百分之兩、三百的力氣。

也因此,在Flex的工廠中,必然有許多建造這些UI元素的祕密武器,而這就是MXML工作。

基本上,我們可以把MXML的元素分成兩類,看得到的和看不到的。

看得到的,又可分成兩類,容器與控制項。

容器可以看成是用來協助定位的元素,例如可以將元素水平或垂直對齊的元件,或是像Tab這樣的東西。

控制項則是像按鈕啦、文字輸入框啦這些東西。

看得見的好理解,那肉眼看不見的又是什麼呢?

(想起倪匡的小說《透明光》呀)

其實就是一些資料元件,像是陣列或集合或是建立Web Service的元素;還有一些工具元件,像是資料繫結(data binding)的元件或是可以做到程式中loop效果的反覆元件等。

MXML的元件,大概不脫上述幾類,另外它也能透過屬性來處理一些事件,像是click之後發射炸彈開始炸小財神之類的。


上一篇
::進入Flex的異想世界(6):: ActionScript登場(II)
下一篇
::進入Flex的異想世界(8):: Flex的靈魂角色-MXML(II)
系列文
進入Flex 3異想世界的30招8

1 則留言

0

沒有自己實做去時是像看科幻小說一樣"只能想像",想得太多可以做得太少..."時間"多一點或許就可以在"精進一下"咯!
消化消化
謝謝分享

我要留言

立即登入留言