其實對于這個題目是不恰當?shù)?,因為flex中是沒有頁面這個概念的,頁面在flex里面其實就是一個個的Canvas,vbox,
hbox等等之類的東西,看到的不同頁面的切換,就是這些元素一層層的堆積,或者替換,但是為了好理解,還是稱之為
"頁面跳轉(zhuǎn)"。其實我們可以對比傳統(tǒng)的C/S開發(fā)模式,沒頁面跳轉(zhuǎn),只有窗體和元件的顯示和隱藏。
那么在flex中怎么實現(xiàn)頁面的跳轉(zhuǎn)了,我總結(jié)了下,主要有一下幾種方式:
1、使用ViewStack組件,具體代碼如下所示:把要跳轉(zhuǎn)的頁新建成 MXML Component,然后通過 ViewStack 組件把
這些頁包含進來
<mx:ViewStack id="storeViews" width="100%" height="550" creationPolicy="all">
<shouye id="homeView" label="首 頁" showEffect="WipeDown" hideEffect="WipeUp" />
<leixing id="pView" label="模板類型" showEffect="WipeDown" hideEffect="WipeUp" />
<make id="supportView" label="立即制作" showEffect="WipeDown" hideEffect="WipeUp" />
</mx:ViewStack>
然后再用別的組件切換這些頁,比如用 Button
<mx:Button click="storeViews.selectedChild=homeView;" />
但是這個方法很郁悶就是頁面切換總是彈出新的頁面,而不是只變換url
3、也是我采用的方法,就是引用flash中的 import flash.external.ExternalInterface 這個接口,他能提供像jsp中window.location.href方法一樣方便,主要代碼為: ExternalInterface.call("function()
{window.location.href='http://localhost:8080/Flex_J2eeDemo/bin/Welcome.html';}
");
4、使用組件技術(shù),把不通的頁面做成component,然后通過TabNavigator等進行切換,通過使用state實現(xiàn)跳轉(zhuǎn)。效果如圖所示:
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。