《HarmonyOS應(yīng)用開發(fā)基礎(chǔ)》 課件知識(shí)點(diǎn)2-9 UIAbility內(nèi)頁面的跳轉(zhuǎn)與數(shù)據(jù)傳遞_第1頁
《HarmonyOS應(yīng)用開發(fā)基礎(chǔ)》 課件知識(shí)點(diǎn)2-9 UIAbility內(nèi)頁面的跳轉(zhuǎn)與數(shù)據(jù)傳遞_第2頁
《HarmonyOS應(yīng)用開發(fā)基礎(chǔ)》 課件知識(shí)點(diǎn)2-9 UIAbility內(nèi)頁面的跳轉(zhuǎn)與數(shù)據(jù)傳遞_第3頁
《HarmonyOS應(yīng)用開發(fā)基礎(chǔ)》 課件知識(shí)點(diǎn)2-9 UIAbility內(nèi)頁面的跳轉(zhuǎn)與數(shù)據(jù)傳遞_第4頁
《HarmonyOS應(yīng)用開發(fā)基礎(chǔ)》 課件知識(shí)點(diǎn)2-9 UIAbility內(nèi)頁面的跳轉(zhuǎn)與數(shù)據(jù)傳遞_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

UIAbility內(nèi)頁面的跳轉(zhuǎn)與數(shù)據(jù)傳遞概述為了豐富應(yīng)用的內(nèi)容,一個(gè)UIAbility內(nèi)可能有多個(gè)頁面,這就涉及到UIAbility內(nèi)頁面的跳轉(zhuǎn)與數(shù)據(jù)傳遞。頁面間的跳轉(zhuǎn)可以通過頁面路由router模塊來實(shí)現(xiàn)。也可以通過Navigator路由容器組件實(shí)現(xiàn)。router模塊頁面路由模塊根據(jù)頁面url找到目標(biāo)頁面,從而實(shí)現(xiàn)跳轉(zhuǎn)。通過頁面路由模塊,可以使用不同的url訪問不同的頁面,包括跳轉(zhuǎn)到UIAbility內(nèi)的指定頁面、用UIAbility內(nèi)的某個(gè)頁面替換當(dāng)前頁面、返回上一頁面或指定的頁面等。具體使用方法請(qǐng)參見@ohos.router(頁面路由)。使用router模塊進(jìn)行頁面跳轉(zhuǎn)和參數(shù)接收1.在使用頁面路由之前,需要先導(dǎo)入router模塊。importrouterfrom'@ohos.router';2.使用router模塊進(jìn)行頁面跳轉(zhuǎn)的方式有兩種:(使用Index跳往Second舉例)方式一:router.pushUrl()方式跳轉(zhuǎn)頁面(Index頁面不會(huì)銷毀,可以通過back返回)router.pushUrl({

url:

‘pages/Second’,//目標(biāo)頁面路徑

params:

{

//參數(shù)

src:

‘Index頁面?zhèn)鱽淼臄?shù)據(jù)’,

}},

router.RouterMode.Single)//模式,RouterMode.Single單例或RouterMode.Standard使用router模塊進(jìn)行頁面跳轉(zhuǎn)和參數(shù)接收方式二:router.replaceUrl()方式跳轉(zhuǎn)頁面(Index頁面會(huì)被銷毀)router.replaceUrl({

url:

‘pages/Second’,//目標(biāo)頁面路徑

params:

{

//參數(shù)

src:

‘Index頁面?zhèn)鱽淼臄?shù)據(jù)’,

}},

router.RouterMode.Single)//模式,RouterMode.Single單例或RouterMode.Standard兩種跳轉(zhuǎn)方式頁面棧對(duì)比IndexIndexSecondpushUrl方式replaceUrl方式Second使用router模塊進(jìn)行頁面跳轉(zhuǎn)和參數(shù)接收在完成向目標(biāo)頁面跳轉(zhuǎn)后,怎么在目標(biāo)頁面接收跳轉(zhuǎn)攜帶的參數(shù)呢?3.參數(shù)接收調(diào)用router.getParams()方法獲取Index頁面?zhèn)鬟f過來的自定義參數(shù)。import

router

from

'@ohos.router';@Entry@Componentstruct

Second

{

@State

src:

string

=

router.getParams()?.['src'];

//

頁面刷新展示

...}使用router模塊進(jìn)行頁面跳轉(zhuǎn)和參數(shù)接收頁面跳轉(zhuǎn)效果示例圖使用router模塊進(jìn)行頁面跳轉(zhuǎn)和參數(shù)接收前面我們舉例介紹了如何從Index頁面跳轉(zhuǎn)到Second頁面,若在Second頁面完成操作后,想要返回到Index頁面,應(yīng)該如何實(shí)現(xiàn)呢?IndexSecondpushUrl方式SecondreplaceUrl方式調(diào)用router.back()返回的目標(biāo)頁面需要在頁面棧中存在才能正常跳轉(zhuǎn)。例如調(diào)用router.pushUrl()方法跳轉(zhuǎn)到Second頁面,在Second頁面可以通過調(diào)用router.back()方法返回到上一個(gè)頁面。在Second頁面調(diào)用pushUrl()方法或replaceUrl()方法到Index不叫頁面返回。返回上一個(gè)頁面。router.back();返回到指定頁面。router.back({url:'pages/Index'});頁面返回頁面棧中無返回的目標(biāo)頁面,無法返回使用router模塊進(jìn)行頁面跳轉(zhuǎn)和參數(shù)接收router.back({

url:

'pages/Index',

params:

{

src:

'Second頁面?zhèn)鱽淼臄?shù)據(jù)',

}})頁面返回示例:import

router

from

'@ohos.router';@Entry@Componentstruct

Index

{

@State

src:

string

=

'';

onPageShow()

{

this.src

=

router.getParams()?.['src'];

}

//

頁面刷新展示

...}1.在Second頁面中返回,并攜帶參數(shù)2.在Index頁面中接收參數(shù)使用router模塊進(jìn)行頁面跳轉(zhuǎn)和參數(shù)接收頁面返回效果圖Navicator路由容器組件Navigator組件也可以進(jìn)行頁面跳轉(zhuǎn),因?yàn)镹avigator是一個(gè)容器組件,所以在使用時(shí)是用Navigator組件包裹住子組件,子組件被點(diǎn)擊時(shí)實(shí)現(xiàn)頁面跳轉(zhuǎn)并傳參。Navicator路由容器組件使用Navigator組件跳轉(zhuǎn)到Second頁面Navigator({

target:

'pages/Second',

type:

NavigationType.Push

})

{

Button('跳轉(zhuǎn)')}.params({

name:

"abc",

age:

23

})target是指定跳轉(zhuǎn)目標(biāo)頁面的路徑,type指定路由方式。路由方式由枚舉值.NavigationType枚舉值說明:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論