【鸿蒙学习笔记】UIAbility组件概述

官方文档:UIAbility组件

UIAbility组件概述

[Q&A] 什么是UIAbility?

  1. UIAbility组件是一种包含UI界面的应用组件,专门用于与用户进行交互。主要用于处理用户输入、展示信息以及与用户进行实时交流。
  2. 一个UIAbility组件中可以通过多个页面来实现一个完整的功能模块。每个页面对应功能模块的不同阶段或视图,实现模块化的设计。每一个UIAbility组件实例都对应于最近任务列表中的一个任务。

声明周期

在这里插入图片描述

Create(创建阶段),在Create阶段,UIAbility实例被创建,可以进行应用的初始化操作。
Foreground(前台阶段),UIAbility实例切换至前台,成为用户当前关注的界面。
Background(后台阶段)UIAbility实例切换至后台,失去用户焦点。
Destroy(销毁阶段)在Destroy阶段,UIAbility实例被销毁,用作资源的释放和善后工作。

UIAbility组件-启动模式

  1. singleton(单实例模式)
    每次调用startAbility()方法时,如果应用进程中该类型的UIAbility实例已经存在,则复用系统中的UIAbility实例。系统中只存在唯一一个该UIAbility实例,即在最近任务列表中只存在一个该类型的UIAbility实例。

  2. multiton(多实例模式)
    multiton启动模式为多实例模式,每次调用startAbility()方法时,都会在应用进程中创建一个新的该类型UIAbility实例。即在最近任务列表中可以看到有多个该类型的UIAbility实例。

  3. specified(指定实例模式)
    specified启动模式为指定实例模式,针对一些特殊场景使用(例如文档应用中每次新建文档希望都能新建一个文档实例,重复打开一个已保存的文档希望打开的都是同一个文档实例)。

UIAbility组件-与UI的数据同步

  1. 使用EventHub 进行数据通信
    EventHub 提供了基于发布订阅模式的通信机制,事件需要先被订阅后才能被发布。
    订阅者收到消息后进行异步处理,实现组件间的松耦合通信。
  2. 使用AppStorage/LocalStorage来进行数据同步
    可以将数据存储在本地,实现数据的持久化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值