js-apis-prompt.md 8.8 KB
Newer Older
K
kukixi 已提交
1 2
# 弹窗

T
explain  
tianyu 已提交
3 4
创建并显示文本提示框、对话框和操作菜单。

5 6
> **说明:**
>
K
kukixi 已提交
7 8 9 10
> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

## 导入模块

H
HelloCrease 已提交
11
```js
K
kukixi 已提交
12 13 14 15 16 17 18 19 20 21 22 23
import prompt from '@ohos.prompt'
```

## prompt.showToast

showToast(options: ShowToastOptions): void

创建并显示文本提示框。

**系统能力:** SystemCapability.ArkUI.ArkUI.Full

**参数:**
H
HelloCrease 已提交
24

H
HelloCrease 已提交
25 26 27
| 参数名     | 类型                                    | 必填   | 说明      |
| ------- | ------------------------------------- | ---- | ------- |
| options | [ShowToastOptions](#showtoastoptions) | 是    | 文本弹窗选项。 |
K
kukixi 已提交
28 29

**示例:**
H
HelloCrease 已提交
30 31

```js
H
HelloCrease 已提交
32 33 34 35
prompt.showToast({            
  message: 'Message Info',
    duration: 2000,      
});
H
HelloCrease 已提交
36 37
```

W
wangshuainan 已提交
38 39
![zh-cn_image_0001](figures/zh-cn_image_0001.gif)

K
kukixi 已提交
40 41 42 43
## ShowToastOptions

文本提示框的选项。

H
HelloCrease 已提交
44
**系统能力:**  SystemCapability.ArkUI.ArkUI.Full。
K
kukixi 已提交
45

H
HelloCrease 已提交
46 47 48 49 50
| 名称       | 类型                                       | 必填   | 说明                                       |
| -------- | ---------------------------------------- | ---- | ---------------------------------------- |
| message  | string\| [Resource](../../ui/ts-types.md#resource类型)<sup>9+</sup> | 是    | 显示的文本信息。                                 |
| duration | number                                   | 否    | 默认值1500ms,取值区间:1500ms-10000ms。若小于1500ms则取默认值,若大于10000ms则取上限值10000ms。 |
| bottom   | string\| number                          | 否    | 设置弹窗边框距离屏幕底部的位置。                         |
K
kukixi 已提交
51 52 53

## prompt.showDialog

K
kukixi 已提交
54
showDialog(options: ShowDialogOptions): Promise&lt;ShowDialogSuccessResponse&gt;
K
kukixi 已提交
55 56

创建并显示对话框,对话框响应后同步返回结果。
K
kukixi 已提交
57

H
HelloCrease 已提交
58
**系统能力:**  SystemCapability.ArkUI.ArkUI.Full
K
kukixi 已提交
59 60

**参数:**
H
HelloCrease 已提交
61

H
HelloCrease 已提交
62 63 64
| 参数名     | 类型                                      | 必填   | 说明     |
| ------- | --------------------------------------- | ---- | ------ |
| options | [ShowDialogOptions](#showdialogoptions) | 是    | 对话框选项。 |
K
kukixi 已提交
65 66

**返回值:**
K
kukixi 已提交
67

H
HelloCrease 已提交
68 69 70
| 类型                                       | 说明       |
| ---------------------------------------- | -------- |
| Promise&lt;[ShowDialogSuccessResponse](#showdialogsuccessresponse)&gt; | 对话框响应结果。 |
K
kukixi 已提交
71

K
kukixi 已提交
72
**示例:**
K
kukixi 已提交
73

H
HelloCrease 已提交
74
```js
H
HelloCrease 已提交
75 76 77 78 79 80 81 82 83 84 85
prompt.showDialog({
  title: 'Title Info',
  message: 'Message Info',
  buttons: [
    {
      text: 'button1',
      color: '#000000',
    },
    {
      text: 'button2',
      color: '#000000',
K
kukixi 已提交
86
    }
H
HelloCrease 已提交
87 88 89 90 91 92 93 94
  ],
})
  .then(data => {
    console.info('showDialog success, click button: ' + data.index);
  })
  .catch(err => {
    console.info('showDialog error: ' + err);
  })
H
HelloCrease 已提交
95
```
K
kukixi 已提交
96

W
wangshuainan 已提交
97 98
![zh-cn_image_0002](figures/zh-cn_image_0002.gif)

K
kukixi 已提交
99 100
## prompt.showDialog

K
kukixi 已提交
101
showDialog(options: ShowDialogOptions, callback: AsyncCallback&lt;ShowDialogSuccessResponse&gt;):void 
K
kukixi 已提交
102 103 104

创建并显示对话框,对话框响应结果异步返回。

H
HelloCrease 已提交
105
**系统能力:**  SystemCapability.ArkUI.ArkUI.Full
K
kukixi 已提交
106 107

**参数:**
H
HelloCrease 已提交
108

H
HelloCrease 已提交
109 110 111 112
| 参数名      | 类型                                       | 必填   | 说明           |
| -------- | ---------------------------------------- | ---- | ------------ |
| options  | [ShowDialogOptions](#showdialogoptions)  | 是    | 页面显示对话框信息描述。 |
| callback | AsyncCallback&lt;[ShowDialogSuccessResponse](#showdialogsuccessresponse)&gt; | 是    | 对话框响应结果回调。   |
K
kukixi 已提交
113 114

**示例:**
H
HelloCrease 已提交
115 116

```js
H
HelloCrease 已提交
117 118 119 120 121 122 123
prompt.showDialog({
  title: 'showDialog Title Info',
  message: 'Message Info',
  buttons: [
    {
      text: 'button1',
      color: '#000000',
K
kukixi 已提交
124
    },
H
HelloCrease 已提交
125 126 127
    {
      text: 'button2',
      color: '#000000',
K
kukixi 已提交
128
    }
H
HelloCrease 已提交
129 130 131 132 133
  ]
}, (err, data) => {
  if (err) {
    console.info('showDialog err: ' + err);
    return;
K
kukixi 已提交
134
  }
H
HelloCrease 已提交
135 136
  console.info('showDialog success callback, click button: ' + data.index);
});
H
HelloCrease 已提交
137
```
K
kukixi 已提交
138

W
wangshuainan 已提交
139 140
![zh-cn_image_0004](figures/zh-cn_image_0004.gif)

K
kukixi 已提交
141 142 143 144
## ShowDialogOptions

对话框的选项。

H
HelloCrease 已提交
145
**系统能力:** SystemCapability.ArkUI.ArkUI.Full
K
kukixi 已提交
146

H
HelloCrease 已提交
147 148
| 名称      | 类型                                       | 必填   | 说明                                       |
| ------- | ---------------------------------------- | ---- | ---------------------------------------- |
L
luoying_ace_admin 已提交
149 150
| title   | string\| [Resource](../../ui/ts-types.md#resource类型)<sup>9+</sup> | 否    | 标题文本。                                    |
| message | string\| [Resource](../../ui/ts-types.md#resource类型)<sup>9+</sup> | 否    | 内容文本。                                    |
H
HelloCrease 已提交
151
| buttons | Array                                    | 否    | 对话框中按钮的数组,结构为:{text:'button',&nbsp;color:&nbsp;'\#666666'},支持1-3个按钮。其中第一个为positiveButton;第二个为negativeButton;第三个为neutralButton。 |
K
kukixi 已提交
152 153 154 155 156

## ShowDialogSuccessResponse 

对话框的响应结果。

H
HelloCrease 已提交
157
**系统能力:**  SystemCapability.ArkUI.ArkUI.Full
K
kukixi 已提交
158

H
HelloCrease 已提交
159 160
| 名称    | 类型     | 说明                  |
| ----- | ------ | ------------------- |
K
kukixi 已提交
161 162 163 164 165
| index | number | 选中按钮在buttons数组中的索引。 |


## prompt.showActionMenu

K
kukixi 已提交
166
showActionMenu(options: ActionMenuOptions, callback: AsyncCallback&lt;ActionMenuSuccessResponse&gt;):void
K
kukixi 已提交
167 168 169 170 171 172

创建并显示操作菜单,菜单响应结果异步返回。

**系统能力:** 以下各项对应的系统能力均为SystemCapability.ArkUI.ArkUI.Full。

**参数:**
H
HelloCrease 已提交
173

H
HelloCrease 已提交
174 175 176 177
| 参数名      | 类型                                       | 必填   | 说明        |
| -------- | ---------------------------------------- | ---- | --------- |
| options  | [ActionMenuOptions](#actionmenuoptions)  | 是    | 操作菜单选项。   |
| callback | AsyncCallback&lt;[ActionMenuSuccessResponse](#actionmenusuccessresponse)> | 是    | 菜单响应结果回调。 |
K
kukixi 已提交
178 179

**示例:**
H
HelloCrease 已提交
180 181

```js
H
HelloCrease 已提交
182 183 184 185 186 187
prompt.showActionMenu({
  title: 'Title Info',
  buttons: [
    {
      text: 'item1',
      color: '#666666',
K
kukixi 已提交
188
    },
H
HelloCrease 已提交
189 190 191 192 193 194 195 196 197
    {
      text: 'item2',
      color: '#000000',
    },
  ]
}, (err, data) => {
  if (err) {
    console.info('showActionMenu err: ' + err);
    return;
K
kukixi 已提交
198
  }
H
HelloCrease 已提交
199 200
  console.info('showActionMenu success callback, click button: ' + data.index);
})
H
HelloCrease 已提交
201
```
K
kukixi 已提交
202

W
wangshuainan 已提交
203 204
![zh-cn_image_0005](figures/zh-cn_image_0005.gif)

K
kukixi 已提交
205
## prompt.showActionMenu
K
kukixi 已提交
206

L
luoying_ace_admin 已提交
207
showActionMenu(options: ActionMenuOptions): Promise&lt;ActionMenuSuccessResponse&gt;
K
kukixi 已提交
208 209 210 211 212 213

创建并显示操作菜单,菜单响应后同步返回结果。

**系统能力:** SystemCapability.ArkUI.ArkUI.Full

**参数:**
H
HelloCrease 已提交
214

H
HelloCrease 已提交
215 216 217
| 参数名     | 类型                                      | 必填   | 说明      |
| ------- | --------------------------------------- | ---- | ------- |
| options | [ActionMenuOptions](#actionmenuoptions) | 是    | 操作菜单选项。 |
K
kukixi 已提交
218

K
kukixi 已提交
219
**返回值:**
H
HelloCrease 已提交
220

H
HelloCrease 已提交
221 222 223
| 类型                                       | 说明      |
| ---------------------------------------- | ------- |
| Promise&lt;[ActionMenuSuccessResponse](#actionmenusuccessresponse)&gt; | 菜单响应结果。 |
K
kukixi 已提交
224 225

**示例:**
H
HelloCrease 已提交
226 227

```js
H
HelloCrease 已提交
228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246
prompt.showActionMenu({
  title: 'showActionMenu Title Info',
  buttons: [
    {
      text: 'item1',
      color: '#666666',
    },
    {
      text: 'item2',
      color: '#000000',
    },
  ]
})
  .then(data => {
    console.info('showActionMenu success, click button: ' + data.index);
  })
  .catch(err => {
    console.info('showActionMenu error: ' + err);
  })
H
HelloCrease 已提交
247
```
W
wangshuainan 已提交
248 249
![zh-cn_image_0006](figures/zh-cn_image_0006.gif)

K
kukixi 已提交
250 251 252 253
## ActionMenuOptions

操作菜单的选项。

H
HelloCrease 已提交
254
**系统能力:** SystemCapability.ArkUI.ArkUI.Full。
K
kukixi 已提交
255

H
HelloCrease 已提交
256 257
| 名称      | 类型                                       | 必填   | 说明                                       |
| ------- | ---------------------------------------- | ---- | ---------------------------------------- |
L
luoying_ace_admin 已提交
258
| title   | string\| [Resource](../../ui/ts-types.md#resource类型)<sup>9+</sup> | 否    | 标题文本。                                    |
H
HelloCrease 已提交
259
| buttons | Array&lt;[Button](#button)&gt;           | 是    | 菜单中菜单项按钮的数组,结构为:{text:'button',&nbsp;color:&nbsp;'\#666666'},支持1-6个按钮。大于6个按钮时弹窗不显示。 |
K
kukixi 已提交
260 261 262 263 264

## ActionMenuSuccessResponse

操作菜单的响应结果。

H
HelloCrease 已提交
265
**系统能力:** SystemCapability.ArkUI.ArkUI.Full
K
kukixi 已提交
266

H
HelloCrease 已提交
267 268 269
| 名称    | 类型     | 必填   | 说明                       |
| ----- | ------ | ---- | ------------------------ |
| index | number | 否    | 选中按钮在buttons数组中的索引,从0开始。 |
K
kukixi 已提交
270

L
luoying_ace_admin 已提交
271 272 273 274
## Button

菜单中的菜单项按钮。

H
HelloCrease 已提交
275
**系统能力:** SystemCapability.ArkUI.ArkUI.Full
L
luoying_ace_admin 已提交
276

H
HelloCrease 已提交
277 278 279
| 名称    | 类型                                       | 必填   | 说明      |
| ----- | ---------------------------------------- | ---- | ------- |
| text  | string\| [Resource](../../ui/ts-types.md#resource类型)<sup>9+</sup> | 是    | 按钮文本内容。 |
L
luoying_ace_admin 已提交
280
| color | string\| [Resource](../../ui/ts-types.md#resource类型)<sup>9+</sup> | 是    | 按钮文本颜色。 |
L
luoying_ace_admin 已提交
281