Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
1c8a7c53
D
Docs
项目概览
OpenHarmony
/
Docs
1 年多 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
1c8a7c53
编写于
1月 05, 2023
作者:
zyjhandsome
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
《UIAbility生命周期》章节,优化onWindowStageCreate和onWindowStageDestory回调的示例代码内容
Signed-off-by:
zyjhandsome
<
zyjhandsome@126.com
>
上级
8361ff66
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
34 addition
and
11 deletion
+34
-11
zh-cn/application-dev/application-models/uiability-lifecycle.md
...application-dev/application-models/uiability-lifecycle.md
+34
-11
未找到文件。
zh-cn/application-dev/application-models/uiability-lifecycle.md
浏览文件 @
1c8a7c53
...
...
@@ -21,7 +21,7 @@ Create状态为在应用加载过程中,UIAbility实例创建完成时触发
```
ts
import
UIAbility
from
'
@ohos.app.ability.UIAbility
'
;
import
W
indow
from
'
@ohos.window
'
;
import
w
indow
from
'
@ohos.window
'
;
export
default
class
EntryAbility
extends
UIAbility
{
onCreate
(
want
,
launchParam
)
{
...
...
@@ -43,22 +43,37 @@ UIAbility实例创建完成之后,在进入Foreground之前,系统会创建
```
ts
import
UIAbility
from
'
@ohos.app.ability.UIAbility
'
;
import
W
indow
from
'
@ohos.window
'
;
import
w
indow
from
'
@ohos.window
'
;
export
default
class
EntryAbility
extends
UIAbility
{
// ...
onWindowStageCreate
(
windowStage
:
W
indow
.
WindowStage
)
{
onWindowStageCreate
(
windowStage
:
w
indow
.
WindowStage
)
{
// 设置WindowStage的事件订阅(获焦/失焦、可见/不可见)
try
{
windowStage
.
on
(
'
windowStageEvent
'
,
(
data
)
=>
{
console
.
info
(
'
Succeeded in enabling the listener for window stage event changes. Data:
'
+
JSON
.
stringify
(
data
));
let
stageEventType
:
window
.
WindowStageEventType
=
data
;
switch
(
stageEventType
)
{
case
window
.
WindowStageEventType
.
SHOWN
:
// 切到前台
console
.
info
(
'
windowStage foreground.
'
);
break
;
case
window
.
WindowStageEventType
.
ACTIVE
:
// 获焦状态
console
.
info
(
'
windowStage active.
'
);
break
;
case
window
.
WindowStageEventType
.
INACTIVE
:
// 失焦状态
console
.
info
(
'
windowStage inactive.
'
);
break
;
case
window
.
WindowStageEventType
.
HIDDEN
:
// 切到后台
console
.
info
(
'
windowStage background.
'
);
break
;
default
:
break
;
}
});
}
catch
(
exception
)
{
console
.
error
(
'
Failed to enable the listener for window stage event changes. Cause:
'
+
JSON
.
stringify
(
exception
));
}
;
JSON
.
stringify
(
exception
));
}
// 设置UI界面加载
windowStage
.
loadContent
(
'
pages/Index
'
,
(
err
,
data
)
=>
{
...
...
@@ -76,19 +91,27 @@ export default class EntryAbility extends UIAbility {
```
ts
import
UIAbility
from
'
@ohos.app.ability.UIAbility
'
;
import
W
indow
from
'
@ohos.window
'
;
import
w
indow
from
'
@ohos.window
'
;
export
default
class
EntryAbility
extends
UIAbility
{
windowStage
:
window
.
WindowStage
;
// ...
onWindowStageCreate
(
windowStage
:
window
.
WindowStage
)
{
this
.
windowStage
=
windowStage
;
// ...
}
onWindowStageDestroy
()
{
// 释放UI界面资源
// 例如在onWindowStageDestroy()中注销获焦/失焦等WindowStage事件
try
{
windowStage
.
off
(
'
windowStageEvent
'
);
this
.
windowStage
.
off
(
'
windowStageEvent
'
);
}
catch
(
exception
)
{
console
.
error
(
'
Failed to disable the listener for window stage event changes. Cause:
'
+
JSON
.
stringify
(
exception
));
JSON
.
stringify
(
exception
));
};
}
}
...
...
@@ -134,7 +157,7 @@ Destroy状态在UIAbility实例销毁时触发。可以在onDestroy()回调中
```
ts
import
UIAbility
from
'
@ohos.app.ability.UIAbility
'
;
import
W
indow
from
'
@ohos.window
'
;
import
w
indow
from
'
@ohos.window
'
;
export
default
class
EntryAbility
extends
UIAbility
{
// ...
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录