js-apis-inputmethod.md 5.8 KB
Newer Older
Z
zhouyongfei 已提交
1 2
# 输入法框架

T
explain  
tianyu 已提交
3 4
本模块提供对输入法框架的管理,包括隐藏输入法、查询已安装的输入法列表和显示输入法选择对话框。

Z
zhouyongfei 已提交
5 6 7 8 9 10 11 12 13 14 15 16 17 18
> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> 本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。


## 导入模块

```
import inputMethod from '@ohos.inputMethod';
```

## inputMethod<sup>8+</sup>

常量值。

Z
refresh  
zhouyongfei 已提交
19
**系统能力**:以下各项对应的系统能力均为SystemCapability.Miscservices.InputMethodFramework
Z
刷新  
zhouyongfei 已提交
20

Z
zhouyongfei 已提交
21 22
| 名称 | 参数类型 | 可读 | 可写 | 说明 |
| -------- | -------- | -------- | -------- | -------- |
Z
刷新  
zhouyongfei 已提交
23
| MAX_TYPE_NUM | number | 是 | 否 | 可支持的最大输入法个数。 |
Z
zhouyongfei 已提交
24 25


26
## InputMethodProperty<sup>8+</sup>
Z
zhouyongfei 已提交
27 28 29

输入法应用属性。

Z
refresh  
zhouyongfei 已提交
30
**系统能力**:以下各项对应的系统能力均为SystemCapability.Miscservices.InputMethodFramework
Z
刷新  
zhouyongfei 已提交
31

Z
zhouyongfei 已提交
32 33
| 名称 | 参数类型 | 可读 | 可写 | 说明 |
| -------- | -------- | -------- | -------- | -------- |
Z
刷新  
zhouyongfei 已提交
34 35
| packageName | string | 是 | 否 | 包名。 |
| methodId | string | 是 | 否 | Ability名。 |
Z
zhouyongfei 已提交
36

37
## inputMethod.getInputMethodController
Z
zhouyongfei 已提交
38 39 40 41 42

getInputMethodController(): InputMethodController

获取客户端实例[InputMethodController](#InputMethodController)

Z
refresh  
zhouyongfei 已提交
43
**系统能力**:SystemCapability.Miscservices.InputMethodFramework
Z
zhouyongfei 已提交
44

45
**返回值:**
Z
zhouyongfei 已提交
46 47 48 49 50

    | 类型 | 说明 |
    | -------- | -------- |
    | [InputMethodController](#InputMethodController) | 回调返回当前客户端实例。 |

51
**示例:**
T
explain  
tianyu 已提交
52

53
```js
Z
zhouyongfei 已提交
54
  var InputMethodController = inputMethod.getInputMethodController();
55
```
56

57
## inputMethod.getInputMethodSetting<sup>8+</sup>
Z
zhouyongfei 已提交
58 59 60 61 62

getInputMethodSetting(): InputMethodSetting

获取客户端设置实例[InputMethodSetting](#InputMethodSetting)

Z
refresh  
zhouyongfei 已提交
63
**系统能力**: SystemCapability.Miscservices.InputMethodFramework
Z
zhouyongfei 已提交
64

65
**返回值:**
Z
zhouyongfei 已提交
66

T
explain  
tianyu 已提交
67 68 69
| 类型                                      | 说明                         |
| ----------------------------------------- | ---------------------------- |
| [InputMethodSetting](#InputMethodSetting) | 回调返回当前客户端设置实例。 |
Z
zhouyongfei 已提交
70 71


72
**示例:**
73 74

```js
Z
zhouyongfei 已提交
75
  var InputMethodSetting = inputMethod.getInputMethodSetting();
76
```
Z
zhouyongfei 已提交
77

78
## InputMethodController
Z
zhouyongfei 已提交
79

Z
refresh  
zhouyongfei 已提交
80
下列API示例中都需使用[getInputMethodController](#getInputMethodController)回调获取到InputMethodController实例,再通过此实例调用对应方法。
Z
zhouyongfei 已提交
81 82 83 84 85 86 87

### stopInput

stopInput(callback: AsyncCallback&lt;boolean&gt;): void

隐藏输入法。

Z
refresh  
zhouyongfei 已提交
88
**系统能力**:SystemCapability.Miscservices.InputMethodFramework
Z
zhouyongfei 已提交
89

90
**参数:**
Z
zhouyongfei 已提交
91

T
explain  
tianyu 已提交
92 93 94
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| callback | AsyncCallback&lt;boolean&gt; | 是 | 返回输入法隐藏是否成功。 |
Z
zhouyongfei 已提交
95

96
**示例:**
Z
zhouyongfei 已提交
97

98
```js
99
  InputMethodController.stopInput((error)=>{
Z
zhouyongfei 已提交
100 101 102 103 104 105 106 107 108 109
     console.info('stopInput');
 });
```

### stopInput

stopInput(): Promise&lt;boolean&gt;

隐藏输入法。

Z
refresh  
zhouyongfei 已提交
110
**系统能力**: SystemCapability.Miscservices.InputMethodFramework
Z
zhouyongfei 已提交
111

112
**返回值:**
Z
zhouyongfei 已提交
113

T
explain  
tianyu 已提交
114 115 116
| 类型 | 说明 |
| -------- | -------- |
| Promise&lt;boolean&gt; | 返回输入法隐藏是否成功。 |
Z
zhouyongfei 已提交
117

118
**示例:**
Z
zhouyongfei 已提交
119 120


121
```js
122 123
  var isSuccess = InputMethodController.stopInput();
  console.info('stopInput isSuccess = ' + isSuccess);
Z
zhouyongfei 已提交
124 125
```

126
## InputMethodSetting<sup>8+</sup>
Z
zhouyongfei 已提交
127

Z
refresh  
zhouyongfei 已提交
128
下列API示例中都需使用[getInputMethodSetting](#getInputMethodSetting)回调获取到InputMethodSetting实例,再通过此实例调用对应方法。
Z
zhouyongfei 已提交
129

Z
refresh  
zhouyongfei 已提交
130
### listInputMethod
Z
zhouyongfei 已提交
131 132 133 134 135

listInputMethod(callback: AsyncCallback&lt;Array&lt;InputMethodProperty&gt;&gt;): void

查询已安装的输入法列表。

Z
refresh  
zhouyongfei 已提交
136
**系统能力**: SystemCapability.Miscservices.InputMethodFramework
Z
zhouyongfei 已提交
137

138
**参数:**
T
explain  
tianyu 已提交
139 140 141
| 参数名   | 类型                                               | 必填 | 说明                   |
| -------- | -------------------------------------------------- | ---- | ---------------------- |
| callback | Array<[InputMethodProperty](#InputMethodProperty)> | 是   | 返回已安装输入法列表。 |
Z
zhouyongfei 已提交
142

143
**示例:**
T
explain  
tianyu 已提交
144

145
```js
146 147 148 149 150
  InputMethodSetting.listInputMethod((properties)=>{
    for (var i = 0;i < properties.length; i++) {
      var property = properties[i];
      console.info(property.packageName + "/" + property.methodId);
    }
Z
zhouyongfei 已提交
151
  });
152
```
Z
zhouyongfei 已提交
153

Z
refresh  
zhouyongfei 已提交
154
### listInputMethod
Z
zhouyongfei 已提交
155

156
listInputMethod(): Array&lt;InputMethodProperty&gt;
Z
zhouyongfei 已提交
157 158 159

查询已安装的输入法列表。

Z
refresh  
zhouyongfei 已提交
160
**系统能力**: SystemCapability.Miscservices.InputMethodFramework
Z
zhouyongfei 已提交
161

162
**返回值:**
T
explain  
tianyu 已提交
163 164 165
| 类型                                                        | 说明                   |
| ----------------------------------------------------------- | ---------------------- |
| Promise<Array<[InputMethodProperty](#InputMethodProperty)>> | 返回已安装输入法列表。 |
Z
zhouyongfei 已提交
166

167
**示例:**
168 169

```js
170 171 172 173 174
  var properties = InputMethodSetting.listInputMethod();
  for (var i = 0;i < properties.length; i++) {
    var property = properties[i];
    console.info(property.packageName + "/" + property.methodId);
  }
175
```
Z
zhouyongfei 已提交
176

Z
refresh  
zhouyongfei 已提交
177
### displayOptionalInputMethod
Z
zhouyongfei 已提交
178 179 180 181 182

displayOptionalInputMethod(callback: AsyncCallback&lt;void&gt;): void

显示输入法选择对话框。

Z
refresh  
zhouyongfei 已提交
183
**系统能力**: SystemCapability.Miscservices.InputMethodFramework
Z
zhouyongfei 已提交
184

185
**参数:**
Z
zhouyongfei 已提交
186 187 188 189 190

| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调函数。 |

191
**示例:**
192 193

```js
194 195 196
  InputMethodSetting.displayOptionalInputMethod(()=>{
    console.info('displayOptionalInputMethod is called');
  });
197
```
Z
zhouyongfei 已提交
198

Z
refresh  
zhouyongfei 已提交
199
### displayOptionalInputMethod
Z
zhouyongfei 已提交
200 201 202 203 204

  displayOptionalInputMethod(): Promise&lt;void&gt;

  显示输入法选择对话框。

Z
refresh  
zhouyongfei 已提交
205
  **系统能力**: SystemCapability.Miscservices.InputMethodFramework
Z
zhouyongfei 已提交
206

207
**返回值:**
Z
zhouyongfei 已提交
208

Z
refresh  
zhouyongfei 已提交
209
| 类型 | 说明 |
Z
zhouyongfei 已提交
210 211 212
| -------- | -------- |
| Promise&lt;void&gt; | 回调函数。 |

213
**示例:**
214 215

```js
216
  InputMethodSetting.displayOptionalInputMethod();
217
```