Skip to content
Menu
(◍ ´꒳` ◍)

  • Blog
  • Front Page
(◍ ´꒳` ◍)

鸿蒙34 同一 Page 内导航

By admin on 2021年10月1日

AbilitySlice 间导航 3.2.3.1 同一 Page 内导航 当发起导航的 AbilitySlice 和导航目标的 AbilitySlice 处于同一个 Page 时,您可以通过 present()方法实现导航。如下代码片段展示通过点击按钮导航到其他 AbilitySlice 的方法: @Override protected void onStart(Intent intent) { … Button button = …; button.setClickedListener(listener -> present(new TargetSlice(), new Intent())); … } 如果开发者希望在用户从导航目标 AbilitySlice 返回时,能够获得其返回结果,则应当使 用 presentForResult()实现导航。用户从导航目标 AbilitySlice 返回时,系统将回调 onResult()来接收和处理返回结果,开发者需要重写该方法。返回结果由导航目标 AbilitySlice 在其生命周期内通过 setResult()进行设置。 @Override protected void onStart(Intent intent) { … Button button = …; button.setClickedListener(listener -> presentForResult(new TargetSlice(), new Intent(), 0)); … } @Override protected void onResult(int requestCode, Intent resultIntent) { if (requestCode == 0) { // Process resultIntent here. } } 系统为每个 Page 维护了一个 AbilitySlice 实例的栈,每个进入前台的 AbilitySlice 实例均 会入栈。当开发者在调用 present()或 presentForResult()时指定的 AbilitySlice 实例已经在栈 中存在时,则栈中位于此实例之上的 AbilitySlice 均会出栈并终止其生命周期。前面的示例代 码中,导航时指定的 AbilitySlice 实例均是新建的,即便重复执行此代码(此时作为导航目标 的这些实例是同一个类),也不会导致任何 AbilitySlice 出栈。

Category: 鸿蒙

文章导航

鸿蒙33Page Ability 生命周期
鸿蒙35不同 Page 间导航

Related Posts

鸿蒙42创建sever 02

10月 6, 2021
Read More

鸿蒙20资源文件示例

9月 1, 2021
Read More

承认平庸-iptables高级-iprange模块-15

3月 2, 2023
Read More

发表回复 取消回复

您的电子邮箱地址不会被公开。 必填项已用*标注

近期文章

  • 实施002
  • 实施SQL001
  • 泛微oa001-字段
  • 硬件前端-海康威视摄像头
  • 使用Docker搭建Weblogic服务001

近期评论

    归档

    • 2023年10月
    • 2023年9月
    • 2023年8月
    • 2023年5月
    • 2023年4月
    • 2023年3月
    • 2021年11月
    • 2021年10月
    • 2021年9月
    • 2021年8月
    • 2021年5月

    分类

    • C
    • docker
    • iptable
    • ISIS
    • java
    • k8s
    • liunx
    • OpenCV py
    • ospf
    • solr
    • zabbix
    • 劳动法
    • 周杰伦
    • 格林法则
    • 等保
    • 鸿蒙

    其他操作

    • 登录
    • 条目feed
    • 评论feed
    • WordPress.org
    ©2025 (◍ ´꒳` ◍) | WordPress Theme by Superb WordPress Themes