2024/4/4 HarmonyOS学习笔记-UIAbility应用程序入口

UIAbility:一种包含用户界面的应用组件,用于和用户进行交互

UIAbility是系统调度的单元,提供窗口用于界面绘制

1、页面入口组件的页面周期函数

(1)onPageShow()

页面显示时触发调用

(2)onBackPress()

页面返回时调用,返回值boolean类型

(3)onPageHide()

页面消失进入后台时调用

2、UIAbility页面跳转及数据传递

(1)页面跳转

导入router路由模块:import router from '@ohos.router';

在操作函数中调用router的pushUrl方法进行页面跳转:

router.pushUrl({

url : "pages/Second"

})

(2)参数传递

跳转发送

router.pushUrl({

url : "pages/Second",

params: {

src: msg

}

})

参数接收

import router from "@ohos.router";

@State src: string = router.getParams()['src'];

(3)页面返回

router.back()

3、UIAbility生命周期

(1)进入应用程序的方式

桌面点击图标进入:状态转换(创建->前台展示)

最近任务列表进入:状态转换(后台->前台展示)

(2)生命周期描述

Create

/*

  • 应用加载中
  • UIAbility实例创建完成时触发
  • 该回调函数中可以进行应用的初始化操作(变量定义、资源加载)
  • */

WindowStageCreate

/*

  • 进入前台前,系统会创建WindowStage
  • 创建完成后,自动进入OnWindowStageCreate回调
  • 可以设置页面加载,windowStage.loadContent(url,(err.data)=>{})
  • 并设置windowStage的事件订阅(获取焦点、失去焦点、可见、不可见)
  • */

Foreground

/*

  • 切换回前台触发
  • 可以申请被释放的资源
  • */

Background

/*

  • 切换回后台触发
  • */

WindowStageDestroy

/*

  • UIAbility实例销毁之前,系统会进入onWindowStageDestory回调
  • 可以释放资源(注销订阅的事件)
  • */

Destroy

/*

  • UIAbility实例销毁时触发
  • 可以进行系统资源释放,数据保存
  • */
相关推荐
&&Citrus4 小时前
【CPN学习笔记(二)】Chap2 非分层颜色 Petri 网——从一个简单协议开始读懂 CPN
笔记·学习·php·cpn·petri网
HXQ_晴天5 小时前
Linux 磁盘清理 & 查看常用指令笔记
笔记
小橘子8316 小时前
(学习)Claude Code 源码架构深度解析
学习·程序人生·架构
diablobaal8 小时前
云计算学习100天-第102天-Azure入门4
学习·云计算·azure
AI_零食8 小时前
Flutter 框架跨平台鸿蒙开发 - 自定义式按钮设计应用
学习·flutter·ui·华为·harmonyos·鸿蒙
小陈phd8 小时前
多模态大模型学习笔记(三十)—— 基于YOLO26 Pose实现车牌检测
笔记·学习
野指针YZZ9 小时前
XV6操作系统:trap机制学习笔记
笔记·学习
diygwcom9 小时前
学习开源数据采集与监视控制SCADA-即工业组态开源框架FUXA
学习·开源
zl_dfq10 小时前
Python学习5 之【字符串】
python·学习
-许平安-10 小时前
MCP项目笔记九(插件 bacio-quote)
c++·笔记·ai·plugin·mcp