Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
a332738c
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看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
a332738c
编写于
7月 30, 2022
作者:
O
openharmony_ci
提交者:
Gitee
7月 30, 2022
浏览文件
操作
浏览文件
下载
差异文件
!7367 增加模态窗口类型及相关接口
Merge pull request !7367 from ZhengJiangliang/master
上级
9c64e9cd
a5340308
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
143 addition
and
0 deletion
+143
-0
zh-cn/application-dev/reference/apis/js-apis-window.md
zh-cn/application-dev/reference/apis/js-apis-window.md
+143
-0
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-window.md
浏览文件 @
a332738c
...
...
@@ -41,6 +41,7 @@ import window from '@ohos.window';
| TYPE_VOICE_INTERACTION
<sup>
9+
</sup>
| 13 | 表示智慧语音。此接口仅可在Stage模型下使用。
<br/>
此接口为系统接口。 |
| TYPE_POINTER
<sup>
9+
</sup>
| 14 | 表示鼠标。此接口仅可在Stage模型下使用。
<br/>
此接口为系统接口。 |
| TYPE_FLOAT_CAMERA
<sup>
9+
</sup>
| 15 | 表示相机类型悬浮窗。此接口仅可在Stage模型下使用。
<br>
**需要权限:**
ohos.permission.SYSTEM_FLOAT_WINDOW |
| TYPE_DIALOG
<sup>
9+
</sup>
| 16 | 表示模态窗口。此接口仅可在Stage模型下使用。
<br/>
此接口为系统接口。 |
## AvoidAreaType<sup>7+</sup>
...
...
@@ -2022,6 +2023,148 @@ windowClass.off('screenshot', callback)
windowClass
.
off
(
'
screenshot
'
);
```
### on('dialogTargetTouch')<sup>9+</sup>
on(type: 'dialogTargetTouch', callback: Callback
<
void
>
): void
开启模态窗口目标窗口的点击事件的监听。
**系统能力:**
SystemCapability.WindowManager.WindowManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------- | ---- | ------------------------------------------------------------ |
| type | string | 是 | 监听事件,固定为'dialogTargetTouch',即模态窗口目标窗口的点击事件。 |
| callback | Callback
<
void
>
| 是 | 回调函数。当点击事件发生在模态窗口目标窗口的回调。 |
**示例:**
```
js
windowClass
.
on
(
'
dialogTargetTouch
'
,
()
=>
{
console
.
info
(
'
touch dialog target
'
);
});
```
### off('dialogTargetTouch')<sup>9+</sup>
off(type: 'dialogTargetTouch', callback?: Callback
<
void
>
): void
关闭模态窗口目标窗口的点击事件的监听。
**系统能力:**
SystemCapability.WindowManager.WindowManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ---------------------- | ---- | ------------------------------------------------------------ |
| type | string | 是 | 监听事件,固定为'dialogTargetTouch',即模态窗口目标窗口的点击事件。 |
| callback | Callback
<
void
>
| 否 | 回调函数。当点击事件发生在模态窗口目标窗口的回调。 |
**示例:**
```
js
windowClass
.
off
(
'
dialogTargetTouch
'
);
```
### bindDialogTarget<sup>9+</sup>
bindDialogTarget(token: rpc.RemoteObject, deathCallback: Callback
<
void
>
, callback: AsyncCallback
<
void
>
): void
绑定模态窗口与目标窗口并添加模态窗口销毁监听,使用callback异步回调。
此接口为系统接口。
**系统能力:**
SystemCapability.WindowManager.WindowManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ----------- | ------------------------- | ---- | -------------------- |
| token |
[
rpc.RemoteObject
](
js-apis-rpc.md#remoteobject
)
| 是 | 目标窗口token值。 |
| deathCallback | Callback
<
void
>
| 是 | 模态窗口销毁监听。 |
| callback | AsyncCallback
<
void
>
| 是 | 回调函数。 |
**示例:**
```
js
class
TestRemoteObject
extends
rpc
.
RemoteObject
{
constructor
(
descriptor
)
{
super
(
descriptor
);
}
addDeathRecipient
(
recipient
:
MyDeathRecipient
,
flags
:
number
):
boolean
{
return
true
;
}
removeDeathRecipient
(
recipient
:
MyDeathRecipient
,
flags
:
number
):
boolean
{
return
true
;
}
isObjectDead
():
boolean
{
return
false
;
}
}
let
token
=
new
TestRemoteObject
(
"
testObject
"
);
windowClass
.
bindDialogTarget
(
token
,
()
=>
{
console
.
info
(
'
Dialog Window Need Destroy.
'
);
},
(
err
,
data
)
=>
{
if
(
err
.
code
)
{
console
.
error
(
'
Failed to bind dialog target. Cause:
'
+
JSON
.
stringify
(
err
));
return
;
}
console
.
info
(
'
Succeeded in binding dialog target. Data:
'
+
JSON
.
stringify
(
data
));
});
```
### bindDialogTarget<sup>9+</sup>
bindDialogTarget(token: rpc.RemoteObject, deathCallback: Callback
<
void
>
): Promise
<
void
>
绑定模态窗口与目标窗口并添加模态窗口销毁监听,使用Promise异步回调。
此接口为系统接口。
**系统能力:**
SystemCapability.WindowManager.WindowManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ----------- | ------------------------- | ---- | -------------------- |
| token |
[
rpc.RemoteObject
](
js-apis-rpc.md#remoteobject
)
| 是 | 目标窗口token值。 |
| deathCallback | Callback
<
void
>
| 是 | 模态窗口销毁监听。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise
<
void
>
| 无返回结果的Promise对象。 |
**示例:**
```
js
class
TestRemoteObject
extends
rpc
.
RemoteObject
{
constructor
(
descriptor
)
{
super
(
descriptor
);
}
addDeathRecipient
(
recipient
:
MyDeathRecipient
,
flags
:
number
):
boolean
{
return
true
;
}
removeDeathRecipient
(
recipient
:
MyDeathRecipient
,
flags
:
number
):
boolean
{
return
true
;
}
isObjectDead
():
boolean
{
return
false
;
}
}
let
token
=
new
TestRemoteObject
(
"
testObject
"
);
let
promise
=
windowClass
.
bindDialogTarget
(
token
,
()
=>
{
console
.
info
(
'
Dialog Window Need Destroy.
'
);
});
promise
.
then
((
data
)
=>
{
console
.
info
(
'
Succeeded in binding dialog target. Data:
'
+
JSON
.
stringify
(
data
));
}).
catch
((
err
)
=>
{
console
.
error
(
'
Failed to bind dialog target. Cause:
'
+
JSON
.
stringify
(
err
));
});
```
### isSupportWideGamut<sup>8+</sup>
isSupportWideGamut(callback: AsyncCallback
<
boolean
>
): void
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录