js-apis-inputmethod.md 6.5 KB
Newer Older
E
ester.zhou 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208
# Input Method Framework

> ![icon-note.gif](public_sys-resources/icon-note.gif) **NOTE**
> The initial APIs of this module are supported since API version 6. Newly added APIs will be marked with a superscript to indicate their earliest API version.


## Modules to Import

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

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

Provides the constants.

**System capability**: SystemCapability.Miscservices.InputMethodFramework

| Name| Type| Readable| Writable| Description|
| -------- | -------- | -------- | -------- | -------- |
| MAX_TYPE_NUM | number | Yes| No| Maximum number of supported input methods.|


## InputMethodProperty<sup>8+</sup><a name="InputMethodProperty"></a>

Describes the input method application attributes.

**System capability**: SystemCapability.Miscservices.InputMethodFramework

| Name| Type| Readable| Writable| Description|
| -------- | -------- | -------- | -------- | -------- |
| packageName | string | Yes| No| Package name.|
| methodId | string | Yes| No| Ability name.|

## inputMethod.getInputMethodController<a name="getInputMethodController"></a>

getInputMethodController(): InputMethodController

Obtains an [InputMethodController](#InputMethodController) instance.

**System capability**: SystemCapability.Miscservices.InputMethodFramework

- Return value

    | Type| Description|
    | -------- | -------- |
    | [InputMethodController](#InputMethodController) | Returns the current **InputMethodController** instance.|

- Example
  ```
  var InputMethodController = inputMethod.getInputMethodController();
  ```
## inputMethod.getInputMethodSetting<sup>8+</sup><a name="getInputMethodSetting"></a>

getInputMethodSetting(): InputMethodSetting

Obtains an [InputMethodSetting](#InputMethodSetting) instance.

**System capability**: SystemCapability.Miscservices.InputMethodFramework

- Return value

  | Type                                     | Description                        |
  | ----------------------------------------- | ---------------------------- |
  | [InputMethodSetting](#InputMethodSetting) | Returns the current **InputMethodSetting** instance.|


- Example
  ```
  var InputMethodSetting = inputMethod.getInputMethodSetting();
  ```

## InputMethodController<a name="InputMethodController"></a>

In the following API examples, you must first use [getInputMethodController](#getInputMethodController) to obtain an **InputMethodController** instance, and then call the APIs using the obtained instance.

### stopInput

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

Hides the keyboard. This API uses an asynchronous callback to return the result.

**System capability**: SystemCapability.Miscservices.InputMethodFramework

- Parameters

  | Name| Type| Mandatory| Description|
  | -------- | -------- | -------- | -------- |
  | callback | AsyncCallback&lt;boolean&gt; | Yes| Callback used to return whether the keyboard is successfully hidden.|

- Example

```
 InputMethodController.stopInput((error)=>{
     console.info('stopInput');
 });
```

### stopInput

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

Hides the keyboard. This API uses an asynchronous callback to return the result.

**System capability**: SystemCapability.Miscservices.InputMethodFramework

- Return value

  | Type| Description|
  | -------- | -------- |
  | Promise&lt;boolean&gt; | Promise used to return whether the keyboard is successfully hidden.|

- Example


```
 var isSuccess = InputMethodController.stopInput();
 console.info('stopInput isSuccess = ' + isSuccess);
```

## InputMethodSetting<sup>8+</sup><a name="InputMethodSetting"></a>

In the following API examples, you must first use [getInputMethodSetting](#getInputMethodSetting) to obtain an **InputMethodSetting** instance, and then call the APIs using the obtained instance.

### listInputMethod

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

Obtains the list of installed input methods. This API uses an asynchronous callback to return the result.

**System capability**: SystemCapability.Miscservices.InputMethodFramework

- Parameters
  | Name  | Type                                              | Mandatory| Description                  |
  | -------- | -------------------------------------------------- | ---- | ---------------------- |
  | callback | Array<[InputMethodProperty](#InputMethodProperty)> | Yes  | Callback used to return the list of installed input methods.|

- Example
  ```
   InputMethodSetting.listInputMethod((properties)=>{
     for (var i = 0;i < properties.length; i++) {
       var property = properties[i];
       console.info(property.packageName + "/" + property.methodId);
     }
  });
  ```

### listInputMethod

listInputMethod(): Promise&lt;Array&lt;InputMethodProperty&gt;&gt;

Obtains the list of installed input methods. This API uses an asynchronous callback to return the result.

**System capability**: SystemCapability.Miscservices.InputMethodFramework

- Return value
  | Type                                                       | Description                  |
  | ----------------------------------------------------------- | ---------------------- |
  | Promise<Array<[InputMethodProperty](#InputMethodProperty)>> | Promise used to return the list of installed input methods.|

- Example
  ```
   var properties = InputMethodSetting.listInputMethod();
   for (var i = 0;i < properties.length; i++) {
     var property = properties[i];
     console.info(property.packageName + "/" + property.methodId);
   }
  ```

### displayOptionalInputMethod

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

Displays a dialog box for selecting an input method. This API uses an asynchronous callback to return the result.

**System capability**: SystemCapability.Miscservices.InputMethodFramework

- Parameters

| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| callback | AsyncCallback&lt;void&gt; | Yes| Callback used to return the execution result.|

- Example
  ```
   InputMethodSetting.displayOptionalInputMethod(()=>{
     console.info('displayOptionalInputMethod is called');
   });
  ```

### displayOptionalInputMethod

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

Displays a dialog box for selecting an input method. This API uses an asynchronous callback to return the result.

  **System capability**: SystemCapability.Miscservices.InputMethodFramework

- Return value

| Type| Description|
| -------- | -------- |
| Promise&lt;void&gt; | Promise used to return the execution result.|

  - Example
    ```
     InputMethodSetting.displayOptionalInputMethod();
    ```