Stage模型

1.UIAbility

UIAbility组件是一种包含UI界面的应用组件,主要用于和用户交互

UIAbility的生命周期包括Create、Foreground、Background、Destroy四个状态

  • onCreate:在应用加载过程中,UIAbility实例创建完成时触发
  • UIAbility实例创建完成之后,在进入Foreground之前,系统会创建一个WindowStage
  • Foreground和Background状态分别在UIAbility实例切换至前台和切换至后台时触发
  • onForeground()回调,在UIAbility的UI界面可见之前
  • onBackground()回调,在UIAbility的UI界面完全不可见之后
  • Destroy状态在UIAbility实例销毁时触发

2.启动模式

  • singleton单实例模型:系统中只存在唯一一个该UIAbility实例,即在最近任务列表中只存在一个该类型的 UIAbility实例。
  • standard 多实例模式:都会在应用进程中创建一个新的该类 型UIAbility实例。即在最近任务列表中可以看到有多个该类型的UIAbility实例
  • multiton 多例:都会在应用进程中创建一个新的该类型UIAbility实例,会把之前存 在即在的UIAbility实例清空, 最近任务列表中可以看到有1个该类型的UIAbility实例。只是每次这个示例 都是新建的
  • specified 指定实例模式:允许开发者为该实例创建一个唯一的字符串Key

3.context上下文对象

  •   可获得相关配置信 息,如包代码路径、Bundle名称、Ability名称和应用程序需要的环境状态等属性信息(如startAbility()、connectServiceExtensionAbility()、terminateSelf()等)
  • 获取:private context = getContext(this) as common.UIAbilityContext

4.实现UIAbility组件与UI之间的数据同步

  • EventHub数据通信:
  • globalThis数据同步:
  • AppStorage数据同步:AppStorage是一个全局的状态管理器,适用于多个UIAbility共享同一状态数据的情况
  • LocalStorage数据同步:适用于单个UIAbility内部使用的状态数据

5.UIAbility组件间交互(设备内)

  1. 启动应用内的UIAbility

从EntryAbility的页面中启动FuncAbility

            在EntryAbility中:

在FuncAbility中:

6 want信息载体

对象间信息传递的载体,可以用于应用组件间的信息传递。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值