鸿蒙OS系统中要怎么实现页面跳转?鸿蒙OS中实现页面跳转方法汇总!
发布时间:2022-08-01 20:31:04
鸿蒙OS系统中要怎么实现页面跳转?鸿蒙系统作为一个开源的免费系统,目前已经开始内部测试使用了。而对于开发人员来说,想要了解鸿蒙的页面跳转方法,下面小编就为大家讲解一下吧!
操作方法:
①不同 Slice 间跳转,同一个 Ability 中,优点是方便,高效,缺点是业务逻辑复杂度受限。
button.setClickedListener(
listener -> present(new SecondAbilitySlice(), new Intent()));
②使用 Intent 借助于 ElementName,最常用的页面跳转方式,方便传递参数以及实现相对复杂的业务逻辑交互。
ElementName elementName = new ElementName(……);
intent.setElement(elementName);
intent.setParam(……);
startAbility(intent);
③借助于 Operation,可实现跨应用页面跳转。
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),调用 router.push() 接口将 uri 指定的页面添加到路由栈中,即跳转到 uri 指定的页面。在调用 router 方法之前,需要导入 router 模块。
调用 router.push() 路由到详情页:
// index.js
import router from ‘@system.router’;
export default {
launch() {
router.push ({
uri: ‘pages/detail/detail’, }); },}
调用 router.back() 回到首页:
// detail.js
import router from ‘@system.router’;
export default {
launch() {
router.back(); },}
⑤通过迁移实现分布式设备间页面传递(有请求迁移和请求回迁两种操作)。
1)需实现 IAbilityContinuation 接口
2)需要权限:
ohos.permission.GET_DISTRIBUTED_DEVICE_INFO:用于允许获取分布式组网内的设备列表和设备信息
ohos.permission.DISTRIBUTED_DATASYNC:用于允许不同设备间的数据交换ohos.permission.DISTRIBUTED_DEVICE_STATE_CHANGE:用于允许监听分布式组网内的设备状态变化
ohos.permission.READ_USER_STORAGE:读取存储卡中的内容
ohos.permission.WRITE_USER_STORAGE:修改或删除存储卡中的内容
ohos.permission.GET_BUNDLE_INFO:用于查询其他应用的信息
ohos.permission.servicebus.ACCESS_SERVICE:分布式数据传输的权限
com.huawei.hwddmp.servicebus.BIND_SERVICE:系统应用使用权限
3)需要获取分布式设备 ID(NetworkID)
核心服务类:IContinuationRegisterManager。
服务类的常用 API 方法:
getContinuationRegisterManager();获取服务类的对象
register();注册服务
showDeviceList();获取设备列表
unregister();注销服务
4)请求迁移关键步骤(假定设备 A 向设备 B 迁移)
如下:
需要迁移的 page 实现 IAbilityContinuation 接口
复写 onStartContinuation() 方法,做迁移前的准备工作
复写 onSaveData()方法,保存迁移数据
在设备 B 上复写 onRestoreData() 方法,恢复迁移数据
在设备 A 上复写 onCompleteContinuation() 方法,做迁移后的收尾工作
调用 continueAbility() 或 continueAbilityReversibly() 发起迁移
5)请求回迁需在设备 A 上调用 reverseContinueAbility() 请求回迁
以下关键步骤类似 4)。


猜你喜欢
- 掌通家园怎么修改密码?掌通家园是一款非常好用的教育辅助软件,用户们可以在里面查看幼儿园最新发布的新闻、通知、活动等,那么在掌通家园中要怎么修
- 如今新出的Win10笔记本电脑有很多都是触摸屏的,那么在使用触摸屏时,即使使用的是没有专门为触控操作优化过的桌面版软件(例如IE11浏览器)
- Mac笔记本的屏幕分辩率比普通的笔记本要高,但有时候我们在用MacBook的时候发现屏幕太亮或太暗了影响视觉,对眼睛也不好。下面我们分享3个
- 现在用Win10系统的朋友有很多,偶尔会发生不知道开机密码的情况,这个时候应该怎么解决呢,如果你需要在不知道密码的情况下清除电脑的开机密码,
- win10系统怎么安装泰语键盘?win10系统中想要输入泰语,该怎么安装泰语键盘呢?下面我们就来看看详细的教程,需要的朋友可以参考下win1
- Capture One和Lightroom软件程序的工作方式相似。图像的所有更改都是以非破坏性方式进行的,因为所做的编辑将保存在数据库中,同
- 具体操作如下: 在“文件-选项”中,选择“快速访问工具栏”,在不在功能区中的命令中,选中”比较和合并工作簿”按钮。下图4处&nb
- Mac聚焦搜索Spotlight 搜不到文件怎么办?有时发现聚焦搜索不管用了,搜索不到任何文件,下面是解决方法:在 「启动台」 – 「实用工
- WPS怎么去除Word文档中的水印第一步:首先利用WPS文字工具打开这份Word文档,然后在菜单中依次选择“视图→页眉页脚”命令(图1)。显
- ①我们启动PowerPoint2010,插入一个文本框,输入一些文字,让文字加粗,这样效果更加明显。选中文字,单击菜单栏--格式--文本填充
- 打开粘贴板提示Windows找不到clipbrd.exe文件怎么办?电脑不能复制粘贴,所以想打开粘贴板看看怎么回事,但是打不开,提示Wind
- 咱们在 操纵Word文档 停止 一样平常办公时, 常常 需求在文档 傍边 拔出文本框,在文本框 傍边 输出 需求的 笔墨内容, 那末当 咱们
- excel使用过程中会遇到求相隔几个数里面的最大数,可以利用函数mod的判断,行范围数,用max取响应范围内的最大值,下面演示如下1、数据如
- 黑苹果系统是一款使用在苹果电脑上的精品系统,能够帮助用户们更加方便的去使用系统,但是很多的用户们还是不清楚这个黑苹果系统要怎么去安装,因为黑
- 苹果在上周发布了 iOS 14 的第五个测试版,部分用户升级到该测试版之后,发现在“辅助功能”-“动态效果”中多出了一个“限制帧速率”的选项
- 小伙伴们应该对勾画重点不会感到陌生,很多学生群体在学习时,都会在课本上进行勾画,标出重点内容。也有很多喜欢阅读的小伙伴在进行阅读时,会对文本
- 咱们在 一样平常办公 傍边, 常常会 操纵在WPS表格和Excel表格 建造 林林总总的表格,来 协助 咱们轻松办公,当 藏书楼 事情 职员
- stk是什么文件?stk文件怎么打开?一些用户在上网的时候,会碰到后缀名为stk的文件,想要双击打开却没法打开,到底要怎么打开stk文件呢?
- WPS怎么设置艺术字?1.打开WPS表单软件,进入WPS表单操作界面,如图所示:2.将选项插入该界面,如图所示:3.点击插入选项进入其工具编
- 电脑使用久了总是会出现各种各样的问题,其中最常见的就是蓝屏问题了,蓝屏给系统带来的危害是很严重的,不少用户就曾遇到Windows7出现ndi