系統(tǒng)之家 - 系統(tǒng)光盤下載網(wǎng)站!

當前位置:系統(tǒng)之家 > 系統(tǒng)教程 > 鴻蒙OS中實現(xiàn)頁面跳轉(zhuǎn)方法匯總!

鴻蒙OS系統(tǒng)中要怎么實現(xiàn)頁面跳轉(zhuǎn)?鴻蒙OS中實現(xiàn)頁面跳轉(zhuǎn)方法匯總!

時間:2021-05-12 13:18:00 作者:辰奕 來源:系統(tǒng)之家 1. 掃描二維碼隨時看資訊 2. 請使用手機瀏覽器訪問: https://m.xitongzhijia.net/xtjc/20210512/210587.html 手機查看 評論

  鴻蒙OS系統(tǒng)中要怎么實現(xiàn)頁面跳轉(zhuǎn)?鴻蒙系統(tǒng)作為一個開源的免費系統(tǒng),目前已經(jīng)開始內(nèi)部測試使用了。而對于開發(fā)人員來說,想要了解鴻蒙的頁面跳轉(zhuǎn)方法,下面小編就為大家講解一下吧!

鴻蒙OS中實現(xiàn)頁面跳轉(zhuǎn)方法匯總!

  操作方法:

 、俨煌 Slice 間跳轉(zhuǎn),同一個 Ability 中,優(yōu)點是方便,高效,缺點是業(yè)務邏輯復雜度受限。

  button.setClickedListener(

  listener -> present(new SecondAbilitySlice(), new Intent()));

  ②使用 Intent 借助于 ElementName,最常用的頁面跳轉(zhuǎn)方式,方便傳遞參數(shù)以及實現(xiàn)相對復雜的業(yè)務邏輯交互。

  ElementName elementName = new ElementName(……);

  intent.setElement(elementName);

  intent.setParam(……);

  startAbility(intent);

 、劢柚 Operation,可實現(xiàn)跨應用頁面跳轉(zhuǎn)。

  Intent intent = new Intent();

  Operation operation = new Intent.OperationBuilder()

  .withDeviceId(“”)

  .withBundleName(“com.demoapp”)

  .withAbilityName(“com.demoapp.FooAbility”)

  .build(); intent.setOperation(operation);

  startAbility(intent);

  ④Rout 路由(JS),調(diào)用 router.push() 接口將 uri 指定的頁面添加到路由棧中,即跳轉(zhuǎn)到 uri 指定的頁面。在調(diào)用 router 方法之前,需要導入 router 模塊。

  調(diào)用 router.push() 路由到詳情頁:

  // index.js

  import router from ‘@system.router’;

  export default {

  launch() {

  router.push ({

  uri: ‘pages/detail/detail’, }); },}

  調(diào)用 router.back() 回到首頁:

  // detail.js

  import router from ‘@system.router’;

  export default {

  launch() {

  router.back(); },}

 、萃ㄟ^遷移實現(xiàn)分布式設備間頁面?zhèn)鬟f(有請求遷移和請求回遷兩種操作)。

  1)需實現(xiàn) IAbilityContinuation 接口

  2)需要權限:

  ohos.permission.GET_DISTRIBUTED_DEVICE_INFO:用于允許獲取分布式組網(wǎng)內(nèi)的設備列表和設備信息

  ohos.permission.DISTRIBUTED_DATASYNC:用于允許不同設備間的數(shù)據(jù)交換ohos.permission.DISTRIBUTED_DEVICE_STATE_CHANGE:用于允許監(jiān)聽分布式組網(wǎng)內(nèi)的設備狀態(tài)變化

  ohos.permission.READ_USER_STORAGE:讀取存儲卡中的內(nèi)容

  ohos.permission.WRITE_USER_STORAGE:修改或刪除存儲卡中的內(nèi)容

  ohos.permission.GET_BUNDLE_INFO:用于查詢其他應用的信息

  ohos.permission.servicebus.ACCESS_SERVICE:分布式數(shù)據(jù)傳輸?shù)臋嘞?/p>

  com.huawei.hwddmp.servicebus.BIND_SERVICE:系統(tǒng)應用使用權限

  3)需要獲取分布式設備 ID(NetworkID)

  核心服務類:IContinuationRegisterManager。

  服務類的常用 API 方法:

  getContinuationRegisterManager();獲取服務類的對象

  register();注冊服務

  showDeviceList();獲取設備列表

  unregister();注銷服務

  4)請求遷移關鍵步驟(假定設備 A 向設備 B 遷移)

  如下:

  需要遷移的 page 實現(xiàn) IAbilityContinuation 接口

  復寫 onStartContinuation() 方法,做遷移前的準備工作

  復寫 onSaveData()方法,保存遷移數(shù)據(jù)

  在設備 B 上復寫 onRestoreData() 方法,恢復遷移數(shù)據(jù)

  在設備 A 上復寫 onCompleteContinuation() 方法,做遷移后的收尾工作

  調(diào)用 continueAbility() 或 continueAbilityReversibly() 發(fā)起遷移

  5)請求回遷需在設備 A 上調(diào)用 reverseContinueAbility() 請求回遷

  以下關鍵步驟類似 4)。

標簽 鴻蒙

發(fā)表評論

0

沒有更多評論了

評論就這些咯,讓大家也知道你的獨特見解

立即評論

以上留言僅代表用戶個人觀點,不代表系統(tǒng)之家立場

其他版本軟件

人氣教程排行

相關系統(tǒng)推薦

官方交流群 軟件收錄