当前位置:   article > 正文

鸿蒙开发系统基础能力:【@ohos.inputMethodEngine (输入法服务)】_import inputmethodsubtype from '@ohos.inputmethods

import inputmethodsubtype from '@ohos.inputmethodsubtype';

输入法服务

icon-note.gif 说明:  本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import inputMethodEngine from '@ohos.inputMethodEngine';
  • 1

inputMethodEngine

常量值。

系统能力:以下各项对应的系统能力均为SystemCapability.Miscservices.InputMethodFramework

名称参数类型可读可写说明
ENTER_KEY_TYPE_UNSPECIFIEDnumber无功能键。
ENTER_KEY_TYPE_GOnumber“前往”功能键。
ENTER_KEY_TYPE_SEARCHnumber“搜索”功能键。
ENTER_KEY_TYPE_SENDnumber“发送”功能键。
ENTER_KEY_TYPE_NEXTnumber“下一个”功能键。
ENTER_KEY_TYPE_DONEnumber“回车”功能键。
ENTER_KEY_TYPE_PREVIOUSnumber“前一个”功能键。
PATTERN_NULLnumber无特殊性编辑框。
PATTERN_TEXTnumber文本编辑框。
PATTERN_NUMBERnumber数字编辑框。
PATTERN_PHONEnumber电话号码编辑框。
PATTERN_DATETIMEnumber日期编辑框。
PATTERN_EMAILnumber邮件编辑框。
PATTERN_URInumber超链接编辑框。
PATTERN_PASSWORDnumber密码编辑框。
OPTION_ASCIInumber允许输入ASCII值。
OPTION_NONEnumber不指定编辑框输入属性。
OPTION_AUTO_CAP_CHARACTERSnumber允许输入字符。
OPTION_AUTO_CAP_SENTENCESnumber允许输入句子。
OPTION_AUTO_WORDSnumber允许输入单词。
OPTION_MULTI_LINEnumber允许输入多行。
OPTION_NO_FULLSCREENnumber半屏样式。
FLAG_SELECTINGnumber编辑框处于选择状态。
FLAG_SINGLE_LINEnumber编辑框为单行。
DISPLAY_MODE_PARTnumber编辑框显示为半屏。
DISPLAY_MODE_FULLnumber编辑框显示为全屏。

inputMethodEngine.getInputMethodEngine

getInputMethodEngine(): InputMethodEngine

获取服务端实例。

系统能力: SystemCapability.Miscservices.InputMethodFramework

返回值:

类型说明
[InputMethodEngine]服务端实例。

示例:

var InputMethodEngine = inputMethodEngine.getInputMethodEngine();
  • 1

inputMethodEngine.createKeyboardDelegate

createKeyboardDelegate(): KeyboardDelegate

获取客户端监听实例。

系统能力: SystemCapability.Miscservices.InputMethodFramework

返回值:

类型说明
[KeyboardDelegate]客户端监听实例。

示例:

var KeyboardDelegate = inputMethodEngine.createKeyboardDelegate();
  • 1

InputMethodEngine

下列API示例中都需使用[getInputMethodEngine]回调获取到InputMethodEngine实例,再通过此实例调用对应方法。

on(‘inputStart’)

on(type: ‘inputStart’, callback: (kbController: KeyboardController, textInputClient: TextInputClient) => void): void

订阅输入法绑定成功事件,使用callback回调返回输入法操作相关实例。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
typestring设置监听类型。 -type为‘inputStart’时表示订阅输入法绑定。
callback[KeyboardController], [TextInputClient]回调返回输入法操作相关实例。

示例:

InputMethodEngine.on('inputStart', (kbController, textInputClient) => {
    KeyboardController = kbController;
    TextInputClient = textInputClient;
});
  • 1
  • 2
  • 3
  • 4

off(‘inputStart’)

off(type: ‘inputStart’, callback?: (kbController: KeyboardController, textInputClient: TextInputClient) => void): void

取消订阅输入法绑定成功事件。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
typestring设置监听类型。 -type为‘inputStart’时表示订阅输入法绑定。
callback[KeyboardController], [TextInputClient]回调返回输入法操作相关实例。

示例:

InputMethodEngine.off('inputStart');
  • 1

on(‘keyboardShow’|‘keyboardHide’)

on(type: ‘keyboardShow’|‘keyboardHide’, callback: () => void): void

订阅输入法事件。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
typestring设置监听类型。 - type为’keyboardShow’,表示订阅输入法显示。 - type为’keyboardHide’,表示订阅输入法隐藏。
callbackvoid回调函数。

示例:

InputMethodEngine.on('keyboardShow', (err) => {
    console.info('keyboardShow');
});
  • 1
  • 2
  • 3

off(‘keyboardShow’|‘keyboardHide’)

off(type: ‘keyboardShow’|‘keyboardHide’, callback?: () => void): void

取消订阅输入法事件。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
typestring设置监听类型。 - type为’keyboardShow’,表示订阅输入法显示。 - type为’keyboardHide’,表示订阅输入法隐藏。
callbackvoid回调函数。

示例:

InputMethodEngine.off('keyboardShow');
  • 1

KeyboardDelegate

下列API示例中都需使用[createKeyboardDelegate]回调获取到KeyboardDelegate实例,再通过此实例调用对应方法。

on(‘keyDown’|‘keyUp’)

on(type: ‘keyDown’|‘keyUp’, callback: (event: KeyEvent) => boolean): void

订阅硬键盘事件,使用callback回调返回按键信息。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
typestring设置监听类型。 - type为’keyDown’,表示订阅硬键盘按下。 - type为’keyUp’,表示订阅硬键盘抬起。
callback[KeyEvent]回调返回按键信息。

示例:

KeyboardDelegate.on('keyDown', (event) => {
    console.info('keyDown');
});
  • 1
  • 2
  • 3

off(‘keyDown’|‘keyUp’)

off(type: ‘keyDown’|‘keyUp’, callback?: (event: KeyEvent) => boolean): void

取消订阅硬键盘事件。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
typestring设置监听类型。 - type为’keyDown’,表示订阅硬键盘按下。 - type为’keyUp’,表示订阅硬键盘抬起。
callback[KeyEvent]回调返回按键信息。

示例:

KeyboardDelegate.off('keyDown');
  • 1

on(‘cursorContextChange’)

on(type: ‘cursorContextChange’, callback: (x: number, y:number, height:number) => void): void

订阅光标变化事件,使用callback回调返回光标信息。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

| 参数名   | 类型   | 必填 | 说明                                                         |
| -------- | ------ | ---- | ------------------------------------------------------------ |
| type     | string | 是   | 光标变化事件。<br/>-type为’cursorContextChange‘时,表示光标变化。 |
| callback | number | 是   | 回调返回光标信息。                                           |
  • 1
  • 2
  • 3
  • 4

示例:

```js
KeyboardDelegate.on('cursorContextChange', (x, y, height) => {
    console.info('cursorContextChange');
});
```
  • 1
  • 2
  • 3
  • 4
  • 5

off(‘cursorContextChange’)

off(type: ‘cursorContextChange’, callback?: (x: number, y:number, height:number) => void): void

取消订阅光标变化事件。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

| 参数名   | 类型                 | 必填 | 说明                     |
| -------- | -------------------- | ---- | ------------------------ |
| type     | string       | 是   | 光标变化事件。<br/>-type为’cursorContextChange‘时,表示光标变化。 |
| callback | number | 否 | 回调返回光标信息。 |
  • 1
  • 2
  • 3
  • 4

示例:

```js
KeyboardDelegate.off('cursorContextChange');
```
  • 1
  • 2
  • 3

on(‘selectionChange’)

on(type: ‘selectionChange’, callback: (oldBegin: number, oldEnd: number, newBegin: number, newEnd: number) => void): void

订阅文本选择变化事件,使用callback回调返回文本选择信息。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

| 参数名   | 类型   | 必填 | 说明                                                         |
| -------- | ------ | ---- | ------------------------------------------------------------ |
| type     | string | 是   | 文本选择变化事件。<br/>-type为’selectionChange‘时,表示选择文本变化。 |
| callback | number | 是   | 回调返回文本选择信息。                                       |
  • 1
  • 2
  • 3
  • 4

示例:

```js
KeyboardDelegate.on('selectionChange', (oldBegin, oldEnd, newBegin, newEnd) => {
    console.info('selectionChange');
});
```
  • 1
  • 2
  • 3
  • 4
  • 5

off(‘selectionChange’)

off(type: ‘selectionChange’, callback?: (oldBegin: number, oldEnd: number, newBegin: number, newEnd: number) => void): void

取消订阅文本选择变化事件。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

| 参数名   | 类型                 | 必填 | 说明                     |
| -------- | -------------------- | ---- | ------------------------ |
| type     | string                  | 是   | 文本选择变化事件。<br/>-type为’selectionChange‘时,表示选择文本变化。 |
| callback | number | 否 | 回调返回文本选择信息。 |
  • 1
  • 2
  • 3
  • 4

示例:

```js
KeyboardDelegate.off('selectionChange');
```
  • 1
  • 2
  • 3

on(‘textChange’)

on(type: ‘textChange’, callback: (text: string) => void): void

订阅文本变化事件,使用callback回调返回当前文本内容。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

| 参数名   | 类型                            | 必填 | 说明                                                         |
| -------- | ------------------------------- | ---- | ------------------------------------------------------------ |
| type     | string                  | 是   | 文本变化事件。<br/>-type为’textChange‘时,表示当前文本变化。 |
| callback | string | 是 | 回调返回当前文本内容。 |
  • 1
  • 2
  • 3
  • 4

示例:

```js
KeyboardDelegate.on('textChange', (text) => {
    console.info('textChange');
});
```
  • 1
  • 2
  • 3
  • 4
  • 5

off(‘textChange’)

off(type: ‘textChange’, callback?: (text: string) => void): void

取消订阅文本变化事件。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

| 参数名   | 类型                 | 必填 | 说明                     |
| -------- | -------------------- | ---- | ------------------------ |
| type     | string                  | 是   | 文本变化事件。<br/>-type为’textChange‘时,表示当前文本变化。 |
| callback | string | 否 | 回调返回当前文本内容。 |
  • 1
  • 2
  • 3
  • 4

示例:

```js
KeyboardDelegate.off('textChange');
```
  • 1
  • 2
  • 3

KeyboardController

下列API示例中都需使用[inputStart]回调获取到KeyboardController实例,再通过此实例调用对应方法。

hideKeyboard

hideKeyboard(callback: AsyncCallback): void

隐藏输入法。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
callbackAsyncCallback回调函数

示例:

 KeyboardController.hideKeyboard(()=>{
 });
  • 1
  • 2

hideKeyboard

hideKeyboard(): Promise

隐藏输入法。

系统能力: SystemCapability.Miscservices.InputMethodFramework

返回值:

类型说明
Promise回调函数

示例:

 KeyboardController.hideKeyboard();
  • 1

TextInputClient

下列API示例中都需使用[inputStart]回调获取到TextInputClient实例,再通过此实例调用对应方法。

getForward

getForward(length:number, callback: AsyncCallback): void

获取光标前固定长度的文本。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
lengthnumber文本长度。
callbackAsyncCallback返回文本。

示例:

 TextInputClient.getForward(5,(text) =>{
   console.info("text = " + text);
 });
  • 1
  • 2
  • 3

getForward

getForward(length:number): Promise

获取光标前固定长度的文本。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
lengthnumber文本长度。

返回值:

类型说明
Promise返回文本。

示例:

 var text = TextInputClient.getForward(5);
 console.info("text = " + text);
  • 1
  • 2

getBackward

getBackward(length:number, callback: AsyncCallback): void

获取光标后固定长度的文本。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
lengthnumber文本长度。
callbackAsyncCallback返回文本。

示例:

 TextInputClient.getBackward(5,(text)=>{
   console.info("text = " + text);
});
  • 1
  • 2
  • 3

getBackward

getBackward(length:number): Promise

获取光标后固定长度的文本。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
lengthnumber文本长度。

返回值:

类型说明
Promise返回文本。

示例:

 var text = TextInputClient.getBackward(5);
 console.info("text = " + text);
  • 1
  • 2

deleteForward

deleteForward(length:number, callback: AsyncCallback): void

删除光标前固定长度的文本。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
lengthnumber文本长度。
callbackAsyncCallback操作成功与否。

示例:

TextInputClient.deleteForward(5,(isSuccess)=>{
  console.info("isSuccess = " + isSuccess);
});
  • 1
  • 2
  • 3

deleteForward

deleteForward(length:number): Promise

删除光标前固定长度的文本。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| length | number | 是 | 文本长度。 |
  • 1
  • 2
  • 3

返回值:

 | 类型                            | 说明                                                         |
 | ------------------------------- | ------------------------------------------------------------ |
 | Promise&lt;boolean&gt; |  操作成功与否。                |
  • 1
  • 2
  • 3

示例:

```js
 var isSuccess = TextInputClient.deleteForward(5);
 console.info("isSuccess = " + isSuccess);
```
  • 1
  • 2
  • 3
  • 4

deleteBackward

deleteBackward(length:number, callback: AsyncCallback): void

删除光标后固定长度的文本。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| length | number | 是 | 文本长度。 |
| callback | AsyncCallback&lt;boolean&gt; | 是 | 操作成功与否。 |
  • 1
  • 2
  • 3
  • 4

示例:

```js
 TextInputClient.deleteBackward(5, (isSuccess)=>{
 console.info("isSuccess = " + isSuccess);
});
```
  • 1
  • 2
  • 3
  • 4
  • 5

deleteBackward

deleteBackward(length:number): Promise

删除光标后固定长度的文本。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
lengthnumber文本长度。

返回值:

类型说明
Promise操作成功与否。

示例:

 ```js
 var isSuccess = TextInputClient.deleteBackward(5);
 console.info("isSuccess = " + isSuccess);
 ```
  • 1
  • 2
  • 3
  • 4

sendKeyFunction

sendKeyFunction(action:number, callback: AsyncCallback): void

发送功能键。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| action | number | 是 | 编辑框属性。 |
| callback | AsyncCallback&lt;boolean&gt; | 是 | 操作成功与否。 |
  • 1
  • 2
  • 3
  • 4

示例:

```js
 TextInputClient.sendKeyFunction(inputMethod.ENTER_KEY_TYPE_NEXT,(isSuccess)=>{
  console.info("isSuccess = " + isSuccess);
});
```
  • 1
  • 2
  • 3
  • 4
  • 5

sendKeyFunction

sendKeyFunction(action:number): Promise

发送功能键。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
actionnumber编辑框属性。

返回值:

类型说明
Promise操作成功与否。

示例:

var isSuccess = TextInputClient.sendKeyFunction(inputMethod.ENTER_KEY_TYPE_NEXT);
console.info("isSuccess = " + isSuccess);
  • 1
  • 2

insertText

insertText(text:string, callback: AsyncCallback): void

插入文本。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| text | string | 是 | 文本。 |
| callback | AsyncCallback&lt;boolean&gt; | 是 | 操作成功与否。 |
  • 1
  • 2
  • 3
  • 4

示例:

```js
TextInputClient.insertText("test", (isSuccess)=>{
  console.info("isSuccess = " + isSuccess);
});
```
  • 1
  • 2
  • 3
  • 4
  • 5

insertText

insertText(text:string): Promise

插入文本。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
textstring文本。

返回值:

类型说明
Promise操作成功与否。

示例:

var isSuccess = TextInputClient.insertText("test");
console.info("isSuccess = " + isSuccess);
  • 1
  • 2

getEditorAttribute

getEditorAttribute(callback: AsyncCallback): void

获取编辑框属性值。

系统能力: SystemCapability.Miscservices.InputMethodFramework

参数:

参数名类型必填说明
callbackAsyncCallback<[EditorAttribute]>编辑框属性值。

示例:

  TextInputClient.getEditorAttribute((EditorAttribute)=>{
  });
  • 1
  • 2

getEditorAttribute

getEditorAttribute(): EditorAttribute

获取编辑框属性值。

系统能力: SystemCapability.Miscservices.InputMethodFramework

返回值:

类型说明
Promise<[EditorAttribute]>返回编辑框属性值。

示例:

var EditorAttribute = TextInputClient.getEditorAttribute();
  • 1

)EditorAttribute

编辑框属性值。

系统能力:以下各项对应的系统能力均为SystemCapability.Miscservices.InputMethodFramework

名称参数类型可读可写说明
enterKeyTypenumber编辑框的功能属性。
inputPatternnumber编辑框的文本属性。

KeyEvent

按键属性值。

系统能力:以下各项对应的系统能力均为SystemCapability.Miscservices.InputMethodFramework

名称参数类型可读可写说明
keyCodenumber按键的键值。
keyActionnumber按键的状态。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Li_阴宅/article/detail/887887
推荐阅读
相关标签
  

闽ICP备14008679号