一個是在onEnterFrame里邊查輸入的變化,一個是在onChanged里邊。
我要叫他手工的訪問變量,因為那樣是直接的把對一個和本實例不相關的變量寫道了這個實例的事件函數(shù)里邊。
事件處理函數(shù)非常寶貴,所以有多少處理也都要順序的寫在同一個函數(shù)里。我沒有經(jīng)驗,不知道實際會不會出現(xiàn)很多處理共用一個事件的情況,但是不妨假定這是可能的。
然后,就像上邊的粗體,和本實例不相關卻寫到這個實例的方法,這是很不符合OO思想的,一般叫他緊密的耦合,沒有移植性。
所以選擇數(shù)據(jù)綁定技術,XML產生后一直很熱門的。
綁定么,多個字段(不好就理解是變量吧)的信息是彼此通信的。就是你變了我也變,我們的數(shù)據(jù)總是保持某種程度的一致。
在Flash里使用我還是*次,菜了點。多參考幫助吧。要使用數(shù)據(jù)綁定類,必須有可以被綁定的實例??梢员唤壎ǖ膶嵗辽僖粋€EndPoint。所以只能使用UI Component 的TextInput什么的而不是TextField。
拖放了三個到面板,起名為input ,formatOut, normalOut。然后component inspector面板里添加input--->formatOut 和input--->normalOut的綁定,默認的被綁定的字段(這里是屬性)就是text,就不改了。
screen.width-333)this.width=screen.width-333" border=0>
添加了綁定后要編輯下綁定的屬性(是property不是attribute不要誤會),
direction是數(shù)據(jù)方向選擇out就是說當前的是源,數(shù)據(jù)是由當前的EndPoint決定。個人看法:不管怎樣都不要選擇in/out 確有必要寧可綁定兩次。
bound to 是要綁定的實例,如圖
screen.width-333)this.width=screen.width-333" border=0>
然后看看formatter吧,這個簡單的例子能顯示數(shù)據(jù)綁定優(yōu)越的在這了。它允許你選擇一個格式化數(shù)據(jù)的方法,上面說“保持某種程度的一致”而不是嚴格一致就是因為有這個formatter。
常用的是CustomFormatter,一個繼承mx.data.binding.CustomFormatter的類(其實只要有format和unformat方法就行^^|||)然后那個format方法就可以用“記分 文本”的帖子里邊super-tomato的addComma了。
數(shù)據(jù)綁定類對幾個TextInput來說是第三方的,靈活性很大,我的格式化方法改了,那幾個文本框不用改就可以用。
點這里下載源文件