未验证 提交 48432fd3 编写于 作者: O openharmony_ci 提交者: Gitee

!22951 输入法框架部分接口补充同步api

Merge pull request !22951 from guojin31/master
......@@ -1811,6 +1811,47 @@ try {
}
```
### getForwardSync<sup>10+</sup>
getForwardSync(length:number): string
获取光标前固定长度的文本。
**系统能力:** SystemCapability.MiscServices.InputMethodFramework
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ---------- |
| length | number | 是 | 文本长度。 |
**返回值:**
| 类型 | 说明 |
| ------ | -------------------------- |
| string | 返回光标前固定长度的文本。 |
**错误码:**
以下错误码的详细介绍请参见[输入法框架错误码](../errorcodes/errorcode-inputmethod-framework.md)
| 错误码ID | 错误信息 |
| -------- | ------------------------------ |
| 12800003 | input method client error. |
| 12800006 | input method controller error. |
**示例:**
```js
let length = 1;
try {
let text = inputClient.getForwardSync(length);
console.log(`Succeeded in getting forward, text: ${text}`);
} catch (err) {
console.error(`Failed to getForwardSync: ${JSON.stringify(err)}`);
}
```
### getBackward<sup>9+</sup>
getBackward(length:number, callback: AsyncCallback&lt;string&gt;): void
......@@ -1896,6 +1937,47 @@ try {
}
```
### getBackwardSync<sup>10+</sup>
getBackwardSync(length:number): string
获取光标后固定长度的文本。
**系统能力:** SystemCapability.MiscServices.InputMethodFramework
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ---------- |
| length | number | 是 | 文本长度。 |
**返回值:**
| 类型 | 说明 |
| ------ | -------------------------- |
| string | 返回光标后固定长度的文本。 |
**错误码:**
以下错误码的详细介绍请参见[输入法框架错误码](../errorcodes/errorcode-inputmethod-framework.md)
| 错误码ID | 错误信息 |
| -------- | ------------------------------ |
| 12800003 | input method client error. |
| 12800006 | input method controller error. |
**示例:**
```js
let length = 1;
try {
let text = inputClient.getBackwardSync(length);
console.log(`Succeeded in getting backward, text: ${text}`);
} catch (err) {
console.error(`Failed to getBackwardSync: ${JSON.stringify(err)}`);
}
```
### deleteForward<sup>9+</sup>
deleteForward(length:number, callback: AsyncCallback&lt;boolean&gt;): void
......@@ -1989,6 +2071,41 @@ try {
}
```
### deleteForwardSync<sup>10+</sup>
deleteForwardSync(length:number): void
删除光标前固定长度的文本。
**系统能力:** SystemCapability.MiscServices.InputMethodFramework
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ---------- |
| length | number | 是 | 文本长度。 |
**错误码:**
以下错误码的详细介绍请参见[输入法框架错误码](../errorcodes/errorcode-inputmethod-framework.md)
| 错误码ID | 错误信息 |
| -------- | -------------------------- |
| 12800002 | input method engine error. |
| 12800003 | input method client error. |
**示例:**
```js
let length = 1;
try {
inputClient.deleteForwardSync(length);
console.log('Succeeded in deleting forward.');
} catch (err) {
console.error('deleteForwardSync err: ' + JSON.stringify(err));
}
```
### deleteBackward<sup>9+</sup>
deleteBackward(length:number, callback: AsyncCallback&lt;boolean&gt;): void
......@@ -2078,6 +2195,41 @@ inputClient.deleteBackward(length).then((result) => {
});
```
### deleteBackwardSync<sup>10+</sup>
deleteBackwardSync(length:number): void
删除光标后固定长度的文本。
**系统能力:** SystemCapability.MiscServices.InputMethodFramework
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ---------- |
| length | number | 是 | 文本长度。 |
**错误码:**
以下错误码的详细介绍请参见[输入法框架错误码](../errorcodes/errorcode-inputmethod-framework.md)
| 错误码ID | 错误信息 |
| -------- | -------------------------- |
| 12800002 | input method engine error. |
| 12800003 | input method client error. |
**示例:**
```js
let length = 1;
try {
inputClient.deleteBackwardSync(length);
console.log('Succeeded in deleting backward.');
} catch (err) {
console.error('deleteBackwardSync err: ' + JSON.stringify(err));
}
```
### insertText<sup>9+</sup>
insertText(text:string, callback: AsyncCallback&lt;boolean&gt;): void
......@@ -2165,6 +2317,40 @@ try {
}
```
### insertTextSync<sup>10+</sup>
insertTextSync(text: string): void
插入文本。
**系统能力:** SystemCapability.MiscServices.InputMethodFramework
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ------ | ---- | ---------- |
| text | string | 是 | 文本内容。 |
**错误码:**
以下错误码的详细介绍请参见[输入法框架错误码](../errorcodes/errorcode-inputmethod-framework.md)
| 错误码ID | 错误信息 |
| -------- | -------------------------- |
| 12800002 | input method engine error. |
| 12800003 | input method client error. |
**示例:**
```js
try {
inputClient.insertTextSync('test');
console.log('Succeeded in inserting text.');
} catch (err) {
console.error(`Failed to insertTextSync: ${JSON.stringify(err)}`);
}
```
### getEditorAttribute<sup>9+</sup>
getEditorAttribute(callback: AsyncCallback&lt;EditorAttribute&gt;): void
......@@ -2233,6 +2419,39 @@ inputClient.getEditorAttribute().then((editorAttribute) => {
});
```
### getEditorAttributeSync<sup>10+</sup>
getEditorAttributeSync(): EditorAttribute
获取编辑框属性值。
**系统能力:** SystemCapability.MiscServices.InputMethodFramework
**返回值:**
| 类型 | 说明 |
| ----------------------------------- | -------------- |
| [EditorAttribute](#editorattribute) | 编辑框属性对象 |
**错误码:**
以下错误码的详细介绍请参见[输入法框架错误码](../errorcodes/errorcode-inputmethod-framework.md)
| 错误码ID | 错误信息 |
| -------- | -------------------------- |
| 12800003 | input method client error. |
**示例:**
```js
try {
let editorAttribute = inputClient.getEditorAttributeSync();
console.log(`Succeeded in getEditorAttributeSync, editorAttribute = ${JSON.stringify(editorAttribute)}`);
} catch (err) {
console.error(`Failed to getEditorAttributeSync: ${JSON.stringify(err)}`);
}
```
### moveCursor<sup>9+</sup>
moveCursor(direction: number, callback: AsyncCallback&lt;void&gt;): void
......@@ -2245,7 +2464,7 @@ moveCursor(direction: number, callback: AsyncCallback&lt;void&gt;): void
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------- | ---- | -------------- |
| direction | number | 是 | 光标移动方向。 |
| direction | number | 是 | 光标移动方向。<br/>- 当值为1时,表示向上。<br/>- 当值为2时,表示向下。<br/>- 当值为3时,表示向左。<br/>- 当值为4时,表示向右。 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调函数。当光标移动成功,err为undefined,否则为错误对象。 |
**错误码:**
......@@ -2282,9 +2501,9 @@ moveCursor(direction: number): Promise&lt;void&gt;
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------ | ---- | -------------- |
| direction | number | 是 | 光标移动方向。 |
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------ | ---- | ------------------------------------------------------------ |
| direction | number | 是 | 光标移动方向。<br/>- 当值为1时,表示向上。<br/>- 当值为2时,表示向下。<br/>- 当值为3时,表示向左。<br/>- 当值为4时,表示向右。 |
**返回值:**
......@@ -2314,6 +2533,39 @@ try {
}
```
### moveCursorSync<sup>10+</sup>
moveCursorSync(direction: number): void
移动光标。
**系统能力:** SystemCapability.MiscServices.InputMethodFramework
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------ | ---- | ------------------------------------------------------------ |
| direction | number | 是 | 光标移动方向。<br/>- 当值为1时,表示向上。<br/>- 当值为2时,表示向下。<br/>- 当值为3时,表示向左。<br/>- 当值为4时,表示向右。 |
**错误码:**
以下错误码的详细介绍请参见[输入法框架错误码](../errorcodes/errorcode-inputmethod-framework.md)
| 错误码ID | 错误信息 |
| -------- | -------------------------- |
| 12800003 | input method client error. |
**示例:**
```js
try {
inputClient.moveCursorSync(inputMethodEngine.Direction.CURSOR_UP);
console.log('Succeeded in moving cursor.');
} catch (err) {
console.error(`Failed to moveCursorSync: ${JSON.stringify(err)}`);
}
```
### selectByRange<sup>10+</sup>
selectByRange(range: Range, callback: AsyncCallback&lt;void&gt;): void
......@@ -2397,6 +2649,40 @@ try {
}
```
### selectByRangeSync<sup>10+</sup>
selectByRangeSync(range: Range): void
根据索引范围选中文本。
**系统能力:** SystemCapability.MiscServices.InputMethodFramework
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------ | ----------------- | ---- | ---------------- |
| range | [Range](#range10) | 是 | 选中文本的范围。 |
**错误码:**
以下错误码的详细介绍请参见[输入法框架错误码](../errorcodes/errorcode-inputmethod-framework.md)
| 错误码ID | 错误信息 |
| -------- | -------------------------- |
| 401 | parameter error. |
| 12800003 | input method client error. |
**示例:**
```js
try {
inputClient.selectByRangeSync({start: 0, end: 1});
console.log('Succeeded in selecting by range.');
} catch (err) {
console.error(`Failed to selectByRangeSync: ${JSON.stringify(err)}`);
}
```
### selectByMovement<sup>10+</sup>
selectByMovement(movement: Movement, callback: AsyncCallback&lt;void&gt;): void
......@@ -2480,6 +2766,40 @@ try {
}
```
### selectByMovementSync<sup>10+</sup>
selectByMovementSync(movement: Movement): void
根据光标移动方向选中文本。
**系统能力:** SystemCapability.MiscServices.InputMethodFramework
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ----------------------- | ---- | ---------------------- |
| movement | [Movement](#movement10) | 是 | 选中时光标移动的方向。 |
**错误码:**
以下错误码的详细介绍请参见[输入法框架错误码](../errorcodes/errorcode-inputmethod-framework.md)
| 错误码ID | 错误信息 |
| -------- | -------------------------- |
| 401 | parameter error. |
| 12800003 | input method client error. |
**示例:**
```js
try {
inputClient.selectByMovementSync({direction: 1});
console.log('Succeeded in selecting by movement.');
} catch (err) {
console.error(`Failed to selectByMovement: ${JSON.stringify(err)}`);
}
```
### getTextIndexAtCursor<sup>10+</sup>
getTextIndexAtCursor(callback: AsyncCallback&lt;number&gt;): void
......@@ -2548,6 +2868,40 @@ inputClient.getTextIndexAtCursor().then((index) => {
});
```
### getTextIndexAtCursorSync<sup>10+</sup>
getTextIndexAtCursorSync(): number
获取光标所在处的文本索引。
**系统能力:** SystemCapability.MiscServices.InputMethodFramework
**返回值:**
| 类型 | 说明 |
| ------ | -------------------------- |
| number | 返回光标所在处的文本索引。 |
**错误码:**
以下错误码的详细介绍请参见[输入法框架错误码](../errorcodes/errorcode-inputmethod-framework.md)
| 错误码ID | 错误信息 |
| -------- | ------------------------------ |
| 12800003 | input method client error. |
| 12800006 | Input method controller error. |
**示例:**
```js
try{
let index = inputClient.getTextIndexAtCursorSync();
console.log(`Succeeded in getTextIndexAtCursorSync, index: ${index}`);
} catch (err) {
console.error(`Failed to getTextIndexAtCursorSync: ${JSON.stringify(err)}`);
}
```
### sendExtendAction<sup>10+</sup>
sendExtendAction(action: ExtendAction, callback: AsyncCallback&lt;void&gt;): void
......
# 输入法框架子系统-输入法框架ChangeLog
## cl.imf.1 @ohos.InputMethodEngine中,InputClient新增同步接口
新增同步接口如下:
| 接口 | 说明 |
| ---------------------------------------------- | ------------------------ |
| getForwardSync(length:number): string | 获取光标前固定长度的文本 |
| getBackwardSync(length:number): string | 获取光标后固定长度的文本 |
| deleteForwardSync(length:number): void | 删除光标前固定长度的文本 |
| deleteBackwardSync(length:number): void | 删除光标后固定长度的文本 |
| insertTextSync(text: string): void | 插入文本 |
| getEditorAttributeSync(): EditorAttribute | 获取编辑框属性值 |
| moveCursorSync(direction: number): void | 移动光标 |
| selectByRangeSync(range: Range): void | 根据索引范围选中文本 |
| selectByMovementSync(movement: Movement): void | 根据光标移动方向选中文本 |
| getTextIndexAtCursorSync(): number | 获取光标所在处的文本索引 |
**变更影响**
以上接口的调用,均为同步接口。
**适配指导**
请参考接口说明:[@ohos.inputMethodEngine.d.ts](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-inputmethodengine.md)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册