往期鸿蒙全套实战文章必看:(文中附带全栈鸿蒙学习资料)
@ohos.app.ability.UIAbility (UIAbility)
UIAbility是包含UI界面的应用组件,继承自Ability,提供组件创建、销毁、前后台切换等生命周期回调,同时也具备组件协同的能力,组件协同主要提供如下常用功能:
- Caller:由startAbilityByCall接口返回,CallerAbility(调用者)可使用Caller与CalleeAbility(被调用者)进行通信。
- Callee:UIAbility的内部对象,CalleeAbility(被调用者)可以通过Callee与Caller进行通信。
说明
本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
本模块接口仅可在Stage模型下使用。
导入模块
import { UIAbility } from '@kit.AbilityKit';
属性
系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore
名称 | 类型 | 只读 | 可选 | 说明 |
---|---|---|---|---|
context | UIAbilityContext | 否 | 否 | 上下文。 元服务API: 从API version 11开始,该接口支持在元服务中使用。 |
launchWant | Want | 否 | 否 | UIAbility启动时的参数。 元服务API: 从API version 11开始,该接口支持在元服务中使用。 |
lastRequestWant | Want | 否 | 否 | UIAbility最后请求时的参数。 元服务API: 从API version 11开始,该接口支持在元服务中使用。 |
callee | Callee | 否 | 否 | 调用Stub(桩)服务对象。 |
UIAbility.onCreate
onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void
UIAbility实例处于完全关闭状态下被创建完成后进入该生命周期回调,执行初始化业务逻辑操作。即UIAbility实例冷启动时进入该生命周期回调。同步接口,不支持异步回调。
元服务API: 从API version 11开始,该接口支持在元服务中使用。
系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
want | Want | 是 | 当前UIAbility的Want类型信息,包括ability名称、bundle名称等。 |
launchParam | AbilityConstant.LaunchParam | 是 | 创建 ability、上次异常退出的原因信息。 |
示例:
import { UIAbility, AbilityConstant, Want } from '@kit.AbilityKit';
class MyUIAbility extends UIAbility {
onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
console.log(`onCreate, want: ${want.abilityName}`);
}
}
UIAbility.onWindowStageCreate
onWindowStageCreate(windowStage: window.WindowStage): void
当WindowStage创建后调用。
元服务API: 从API version 11开始,该接口支持在元服务中使用。
系统能力:SystemCapability.Ability.AbilityRuntime.AbilityCore
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
windowStage | window.WindowStage | 是 | WindowStage相关信息。 |
示例:
import { UIAbility } from '@kit.AbilityKit';
import { window } from '@kit.ArkUI';
class MyUIAbility extends UIAbility {
onWindowStageCreate(windowStage: window.WindowStage) {
consol