5月20日
1.removepopup()方法,它一定是個靜態方法,不必建立popupmanager類的例項就能使用removepopup()方法。
2.標籤必須要有五個根節點,根節點的名稱的並不重要。
3.xml中的資料是沒有型別的,使用的時候要設定資料型別。
4.給乙個物件建立屬性,必須使用方括號表示法來建立屬性。如:categorizedproducts[c.@catid]
5.tree中屬性:showroot
設定根專案的可見性。如果 dataprovider 資料報含根節點,並且根節點的設定為false
,則 tree 控制項不會顯示根項
目。僅顯示根專案的後代。此標誌不會對非根專案的 dataprovider(如 list 和 array)產生任何效果。
5月21日
6.注意horizontallist中有乙個labelfunction屬性,可以指定方法(方法得有返回值),和labelfield差不多。
7.horizontallist和tilelist都只許顯示文字,使用itemrenderer屬性可以忽略 這種預設行為。當為itemrenderer提供值時不是輸入檔名的副檔名,而是輸入itemrenderer相對主應用程式檔案的路徑。
8.repeater可遍歷資料集,並使你能訪問其中的每一項。在迴圈時有兩個屬效能幫你訪問資料:currentitem屬性引用了所有資料中當前正處理的部分,而currentindex代表從零開始進行的乙個計數,指定了資料集中當前項的位置。currentitem和currentindex屬性都只在實際迴圈時有意義。 getrepeateritem()方法也很有作用:返回dataprovider屬性中的一項資料。 如:event.target.getrepeateritem().cost(cost是屬性)
5月22日
9.自定義事件為什麼要過載clone()方法:乙個定義事件如果不過載clone方法一般情況下不出問題,但是如果這個事件要進行中繼的話,也就是說被繼續派發下去的情況下,過載就非常有必要了。
private function relay(customevent:customevent):void
這個relay方法就是對customevent的第一次響應,然後在這個方法裡繼續向外派發這個事件,由另乙個事件處理器來繼續處理;在重新派發事件的過程中,flash內部的事件框架將會呼叫事件的clone方法來生成這個事件的乙個新例項,如果沒有過載clone方法,也就是說使用的是預設的過載方法,那麼新的事件例項就是乙個普通的event,而不是自定義事件,這時,在下乙個事件***中如果期待的是自定義事件的話,就會發生:error #1034: 強制轉換型別失敗:無法將 flash.events::event@5e514f1 轉換為.....的錯誤;
10.根據事件的冒泡機制,如果自定義事件的元件處於最裡層。可以在事件建立時多宣告乙個bubbles引數(預設就為空):
public function productevent(prod:product,type:string,bubbles:boolean=false)
public override function clone():event
發布事件用到時,把bubbles設定為true,這樣最上層就可以收到,中間層不用**了:
var e:productevent = new productevent(prod,'itemadded',true);
this.dispatchevent(e);
Flex 3權威指南
flex的發展史 2002年3月,macromedia創造了ria這個術語。當時,這個想法感覺像是個幻想。不過,這些都已經改變了,ria現在已經成為了現實。macromedia在2004年推出了flex,在早已普及的flash平台上開發應用程式因此成為可能。這些應用程式在設計 可用性和可移植性幾個方...
Flex 3權威指南
flex的發展史 2002年3月,macromedia創造了ria這個術語。當時,這個想法感覺像是個幻想。不過,這些都已經改變了,ria現在已經成為了現實。macromedia在2004年推出了flex,在早已普及的flash平台上開發應用程式因此成為可能。這些應用程式在設計 可用性和可移植性幾個方...
Flex 3權威指南
flex的發展史 2002年3月,macromedia創造了ria這個術語。當時,這個想法感覺像是個幻想。不過,這些都已經改變了,ria現在已經成為了現實。macromedia在2004年推出了flex,在早已普及的flash平台上開發應用程式因此成為可能。這些應用程式在設計 可用性和可移植性幾個方...