W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
AccessibilityExtensionContext是AccessibilityExtensionAbility上下文環(huán)境,繼承自ExtensionContext。
輔助功能擴(kuò)展上下文模塊提供輔助功能擴(kuò)展的上下文環(huán)境的能力,包括允許配置輔助應(yīng)用關(guān)注信息類型、查詢節(jié)點(diǎn)信息、手勢(shì)注入等。
本模塊首批接口從API version 9開始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨(dú)標(biāo)記接口的起始版本。
本模塊接口僅可在Stage模型下使用。
在使用AccessibilityExtensionContext的功能前,需要通過AccessibilityExtensionAbility子類實(shí)例獲取AccessibilityExtensionContex的實(shí)例。
- import AccessibilityExtensionAbility from '@ohos.application.AccessibilityExtensionAbility';
- let axContext;
- class MainAbility extends AccessibilityExtensionAbility {
- onConnect(): void {
- console.log('AxExtensionAbility onConnect');
- axContext = this.context;
- }
- }
表示查詢下一焦點(diǎn)元素的方向。
系統(tǒng)能力:以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)能力均為 SystemCapability.BarrierFree.Accessibility.Core
名稱 | 說明 |
---|---|
up | 表示向上查詢。 |
down | 表示向下查詢。 |
left | 表示向左查詢。 |
right | 表示向右查詢。 |
forward | 表示向前查詢。 |
backward | 表示向后查詢。 |
表示查詢焦點(diǎn)元素的類型。
系統(tǒng)能力:以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)能力均為 SystemCapability.BarrierFree.Accessibility.Core
名稱 | 說明 |
---|---|
accessibility | 表示無障礙的焦點(diǎn)類型。 |
normal | 表示普通的焦點(diǎn)類型。 |
表示矩形區(qū)域。
系統(tǒng)能力:以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)能力均為 SystemCapability.BarrierFree.Accessibility.Core
名稱 | 類型 | 可讀 | 可寫 | 說明 |
---|---|---|---|---|
left | number | 是 | 否 | 矩形區(qū)域的左邊界。 |
top | number | 是 | 否 | 矩形區(qū)域的上邊界。 |
width | number | 是 | 否 | 矩形區(qū)域的寬度。 |
height | number | 是 | 否 | 矩形區(qū)域的高度。 |
表示窗口的類型。
系統(tǒng)能力:以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)能力均為 SystemCapability.BarrierFree.Accessibility.Core
名稱 | 說明 |
---|---|
application | 表示應(yīng)用窗口類型。 |
system | 表示系統(tǒng)窗口類型。 |
setTargetBundleName(targetNames: Array<string>): Promise<void>;
設(shè)置關(guān)注的目標(biāo)包名,使用Promise異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
targetNames | Array<string> | 是 | 關(guān)注的目標(biāo)包名。 |
返回值:
類型 | 說明 |
---|---|
Promise<void> | 無返回結(jié)果的Promise對(duì)象。 |
示例:
- let targetNames = ['com.ohos.xyz'];
- try {
- axContext.setTargetBundleName(targetNames).then(() => {
- console.info('set target bundle names success');
- }).catch((err) => {
- console.error('failed to set target bundle names, because ' + JSON.stringify(err));
- });
- } catch (exception) {
- console.error('failed to set target bundle names, because ' + JSON.stringify(exception));
- };
setTargetBundleName(targetNames: Array<string>, callback: AsyncCallback<void>): void;
設(shè)置關(guān)注的目標(biāo)包名,使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
targetNames | Array<string> | 是 | 關(guān)注的目標(biāo)包名。 |
callback | AsyncCallback<void> | 是 | 回調(diào)函數(shù),如果設(shè)置關(guān)注的目標(biāo)包名失敗,則AsyncCallback中err有數(shù)據(jù)返回。 |
示例:
- let targetNames = ['com.ohos.xyz'];
- try {
- axContext.setTargetBundleName(targetNames, (err, data) => {
- if (err && err.code) {
- console.error('failed to set target bundle names, because ' + JSON.stringify(err));
- return;
- }
- console.info('set target bundle names success');
- });
- } catch (exception) {
- console.error('failed to set target bundle names, because ' + JSON.stringify(exception));
- };
getFocusElement(isAccessibilityFocus?: boolean): Promise<AccessibilityElement>;
獲取焦點(diǎn)元素, 使用Promise異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
isAccessibilityFocus | boolean | 否 | 獲取的是否是無障礙焦點(diǎn)元素,默認(rèn)為否。 |
返回值:
類型 | 說明 |
---|---|
Promise<AccessibilityElement> | Promise對(duì)象,返回當(dāng)前對(duì)應(yīng)的焦點(diǎn)元素。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300003 | Do not have accessibility right for this operation. |
示例:
- let focusElement;
- try {
- axContext.getFocusElement().then((data) => {
- focusElement = data;
- console.log('get focus element success');
- }).catch((err) => {
- console.error('failed to get focus element, because ' + JSON.stringify(err));
- });
- } catch (exception) {
- console.error('failed to get focus element, because ' + JSON.stringify(exception));
- }
getFocusElement(callback: AsyncCallback<AccessibilityElement>): void;
獲取焦點(diǎn)元素, 使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
callback | AsyncCallback<AccessibilityElement> | 是 | 回調(diào)函數(shù),返回當(dāng)前對(duì)應(yīng)的焦點(diǎn)元素。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300003 | Do not have accessibility right for this operation. |
示例:
- let focusElement;
- try {
- axContext.getFocusElement((err, data) => {
- if (err && err.code) {
- console.error('failed to get focus element, because ' + JSON.stringify(err));
- return;
- }
- focusElement = data;
- console.info('get focus element success');
- });
- } catch (exception) {
- console.error('failed to get focus element, because ' + JSON.stringify(exception));
- }
getFocusElement(isAccessibilityFocus: boolean, callback: AsyncCallback<AccessibilityElement>): void;
獲取焦點(diǎn)元素, 使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
isAccessibilityFocus | boolean | 是 | 獲取的是否是無障礙焦點(diǎn)元素。 |
callback | AsyncCallback<AccessibilityElement> | 是 | 回調(diào)函數(shù),返回當(dāng)前對(duì)應(yīng)的焦點(diǎn)元素。 |
示例:
- let focusElement;
- let isAccessibilityFocus = true;
- try {
- axContext.getFocusElement(isAccessibilityFocus, (err, data) => {
- if (err && err.code) {
- console.error('failed to get focus element, because ' + JSON.stringify(err));
- return;
- }
- focusElement = data;
- console.info('get focus element success');
- });
- } catch (exception) {
- console.error('failed to get focus element, because ' + JSON.stringify(exception));
- }
getWindowRootElement(windowId?: number): Promise<AccessibilityElement>;
獲取指定窗口的根節(jié)點(diǎn)元素, 使用Promise異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
windowId | number | 否 | 指定窗口的編號(hào),未指定則從當(dāng)前活躍窗口獲取。 |
返回值:
類型 | 說明 |
---|---|
Promise<AccessibilityElement> | Promise對(duì)象,返回指定屏幕的所有窗口。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300003 | Do not have accessibility right for this operation. |
示例:
- let rootElement;
- try {
- axContext.getWindowRootElement().then((data) => {
- rootElement = data;
- console.log('get root element of the window success');
- }).catch((err) => {
- console.error('failed to get root element of the window, because ' + JSON.stringify(err));
- });
- } catch (exception) {
- console.error('failed to get root element of the window, ' + JSON.stringify(exception));
- }
getWindowRootElement(callback: AsyncCallback<AccessibilityElement>): void;
獲取指定窗口的根節(jié)點(diǎn)元素, 使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
callback | AsyncCallback<AccessibilityElement> | 是 | 回調(diào)函數(shù),返回指定窗口的根節(jié)點(diǎn)元素。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300003 | Do not have accessibility right for this operation. |
示例:
- let rootElement;
- try {
- axContext.getWindowRootElement((err, data) => {
- if (err && err.code) {
- console.error('failed to get root element of the window, because ' + JSON.stringify(err));
- return;
- }
- rootElement = data;
- console.info('get root element of the window success');
- });
- } catch (exception) {
- console.error('failed to get root element of the window, because ' + JSON.stringify(exception));
- }
getWindowRootElement(windowId: number, callback: AsyncCallback<AccessibilityElement>): void;
獲取指定屏幕中的所有窗口, 使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
windowId | number | 是 | 指定窗口的編號(hào),未指定則從當(dāng)前活躍窗口獲取。 |
callback | AsyncCallback<AccessibilityElement> | 是 | 回調(diào)函數(shù),返回指定窗口的根節(jié)點(diǎn)元素。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300003 | Do not have accessibility right for this operation. |
示例:
- let rootElement;
- let windowId = 10;
- try {
- axContext.getWindowRootElement(windowId, (err, data) => {
- if (err && err.code) {
- console.error('failed to get root element of the window, because ' + JSON.stringify(err));
- return;
- }
- rootElement = data;
- console.info('get root element of the window success');
- });
- } catch (exception) {
- console.error('failed to get root element of the window, because ' + JSON.stringify(exception));
- }
getWindows(displayId?: number): Promise<Array<AccessibilityElement>>;
獲取指定屏幕中的所有窗口, 使用Promise異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
displayId | number | 否 | 指定的屏幕編號(hào),未指定則從默認(rèn)主屏幕獲取。 |
返回值:
類型 | 說明 |
---|---|
Promise<Array<AccessibilityElement>> | Promise對(duì)象,返回指定屏幕的所有窗口。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300003 | Do not have accessibility right for this operation. |
示例:
- let windows;
- try {
- axContext.getWindows().then((data) => {
- windows = data;
- console.log('get windows success');
- }).catch((err) => {
- console.error('failed to get windows, because ' + JSON.stringify(err));
- });
- } catch (exception) {
- console.error('failed to get windows, because ' + JSON.stringify(exception));
- }
getWindows(callback: AsyncCallback<Array<AccessibilityElement>>): void;
獲取指定屏幕中的所有窗口, 使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
callback | AsyncCallback<Array<AccessibilityElement>> | 是 | 回調(diào)函數(shù),返回指定屏幕的所有窗口。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300003 | Do not have accessibility right for this operation. |
示例:
- let windows;
- try {
- axContext.getWindows((err, data) => {
- if (err && err.code) {
- console.error('failed to get windows, because ' + JSON.stringify(err));
- return;
- }
- windows = data;
- console.info('get windows success');
- });
- } catch (exception) {
- console.error('failed to get windows, because ' + JSON.stringify(exception));
- }
getWindows(displayId: number, callback: AsyncCallback<Array<AccessibilityElement>>): void;
獲取指定屏幕中的所有窗口, 使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
displayId | number | 是 | 指定的屏幕編號(hào),未指定則從默認(rèn)主屏幕獲取。 |
callback | AsyncCallback<Array<AccessibilityElement>> | 是 | 回調(diào)函數(shù),返回指定屏幕的所有窗口。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300003 | Do not have accessibility right for this operation. |
示例:
- let windows;
- let displayId = 10;
- try {
- axContext.getWindows(displayId, (err, data) => {
- if (err && err.code) {
- console.error('failed to get windows, because ' + JSON.stringify(err));
- return;
- }
- windows = data;
- console.info('get windows success');
- });
- } catch (exception) {
- console.error('failed to get windows, because ' + JSON.stringify(exception));
- }
injectGesture(gesturePath: GesturePath): Promise<void>;
注入手勢(shì),使用Promise異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
gesturePath | 是 | 表示手勢(shì)的路徑信息。 |
返回值:
類型 | 說明 |
---|---|
Promise<void> | 無返回結(jié)果的Promise對(duì)象。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300003 | Do not have accessibility right for this operation. |
示例:
- import GesturePath from '@ohos.accessibility.GesturePath';
- import GesturePoint from '@ohos.accessibility.GesturePoint';
- let gesturePath = new GesturePath.GesturePath(100);
- try {
- for (let i = 0; i < 10; i++) {
- let gesturePoint = new GesturePoint.GesturePoint(100, i * 200);
- gesturePath.points.push(gesturePoint);
- }
- axContext.injectGesture(gesturePath).then(() => {
- console.info('inject gesture success');
- }).catch((err) => {
- console.error('failed to inject gesture, because ' + JSON.stringify(err));
- });
- } catch (exception) {
- console.error('failed to inject gesture, because ' + JSON.stringify(exception));
- }
injectGesture(gesturePath: GesturePath, callback: AsyncCallback<void>): void
注入手勢(shì),使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
gesturePath | 是 | 表示手勢(shì)的路徑信息。 | |
callback | AsyncCallback<void> | 是 | 回調(diào)函數(shù),表示注入手勢(shì)執(zhí)行結(jié)果的回調(diào)。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300003 | Do not have accessibility right for this operation. |
示例:
- import GesturePath from '@ohos.accessibility.GesturePath';
- import GesturePoint from '@ohos.accessibility.GesturePoint';
- let gesturePath = new GesturePath.GesturePath(100);
- try {
- for (let i = 0; i < 10; i++) {
- let gesturePoint = new GesturePoint.GesturePoint(100, i * 200);
- gesturePath.points.push(gesturePoint);
- }
- axContext.injectGesture(gesturePath, (err, data) => {
- if (err && err.code) {
- console.error('failed to inject gesture, because ' + JSON.stringify(err));
- return;
- }
- console.info('inject gesture success');
- });
- } catch (exception) {
- console.error('failed to inject gesture, because ' + JSON.stringify(exception));
- }
無障礙節(jié)點(diǎn)元素, 在調(diào)用AccessibilityElement的方法前,需要先通過AccessibilityExtensionContext.getFocusElement()或者AccessibilityExtensionContext.getWindowRootElement()獲取AccessibilityElement實(shí)例。
系統(tǒng)能力:以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)能力均為SystemCapability.BarrierFree.Accessibility.Core
attributeNames<T extends keyof ElementAttributeValues>(): Promise<Array<T>>;
獲取節(jié)點(diǎn)元素的所有屬性名稱,使用Promise異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
返回值:
類型 | 說明 |
---|---|
Promise<Array<T>> | Promise對(duì)象,返回節(jié)點(diǎn)元素的所有屬性名稱。 |
示例:
- let rootElement;
- let attributeNames;
- rootElement.attributeNames().then((data) => {
- console.log('get attribute names success');
- attributeNames = data;
- }).catch((err) => {
- console.log('failed to get attribute names, because ' + JSON.stringify(err));
- });
attributeNames<T extends keyof ElementAttributeValues>(callback: AsyncCallback<Array<T>>): void;
獲取節(jié)點(diǎn)元素的所有屬性名稱,使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
callback | AsyncCallback<Array<T>> | 是 | 回調(diào)函數(shù),返回節(jié)點(diǎn)元素的所有屬性名稱。 |
示例:
- let rootElement;
- let attributeNames;
- rootElement.attributeNames((err, data) => {
- if (err) {
- console.error('failed to get attribute names, because ' + JSON.stringify(err));
- return;
- }
- attributeNames = data;
- console.info('get attribute names success');
- });
attributeValue<T extends keyof ElementAttributeValues>(attributeName: T): Promise<ElementAttributeValues[T]>;
根據(jù)屬性名稱獲取屬性值,使用Promise異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
attributeName | T | 是 | 表示屬性的名稱。 |
返回值:
類型 | 說明 |
---|---|
Promise<ElementAttributeValues[T]> | Promise對(duì)象,返回根據(jù)節(jié)點(diǎn)屬性名稱獲取的屬性值。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300004 | This property does not exist. |
示例:
- let attributeName = 'name';
- let attributeValue;
- let rootElement;
- try {
- rootElement.attributeValue(attributeName).then((data) => {
- console.log('get attribute value by name success');
- attributeValue = data;
- }).catch((err) => {
- console.log('failed to get attribute value, because ' + JSON.stringify(err));
- });
- } catch (exception) {
- console.log('failed to get attribute value, because ' + JSON.stringify(exception));
- }
attributeValue<T extends keyof ElementAttributeValues>(attributeName: T,
callback: AsyncCallback<ElementAttributeValues[T]>): void;
根據(jù)屬性名稱獲取屬性值,使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
attributeName | T | 是 | 表示屬性的名稱。 |
callback | AsyncCallback<ElementAttributeValues[T]> | 是 | 回調(diào)函數(shù),返回根據(jù)節(jié)點(diǎn)屬性名稱獲取的屬性值。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300004 | This property does not exist. |
示例:
- let rootElement;
- let attributeValue;
- let attributeName = 'name';
- try {
- rootElement.attributeValue(attributeName, (err, data) => {
- if (err) {
- console.error('failed to get attribute value, because ' + JSON.stringify(err));
- return;
- }
- attributeValue = data;
- console.info('get attribute value success');
- });
- } catch (exception) {
- console.log('failed to get attribute value, because ' + JSON.stringify(exception));
- }
actionNames(): Promise<Array<string>>;
獲取節(jié)點(diǎn)元素支持的所有操作名稱,使用Promise異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
返回值:
類型 | 說明 |
---|---|
Promise<Array<string>> | Promise對(duì)象,返回節(jié)點(diǎn)元素支持的所有操作名稱。 |
示例:
- let rootElement;
- let actionNames;
- rootElement.actionNames().then((data) => {
- console.log('get action names success');
- actionNames = data;
- }).catch((err) => {
- console.log('failed to get action names because ' + JSON.stringify(err));
- });
actionNames(callback: AsyncCallback<Array<string>>): void;
獲取節(jié)點(diǎn)元素支持的所有操作名稱,使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
callback | AsyncCallback<Array<string>> | 是 | 回調(diào)函數(shù),返回節(jié)點(diǎn)元素支持的所有操作名稱。 |
示例:
- let rootElement;
- let actionNames;
- rootElement.actionNames((err, data) => {
- if (err) {
- console.error('failed to get action names, because ' + JSON.stringify(err));
- return;
- }
- actionNames = data;
- console.info('get action names success');
- });
performAction(actionName: string, parameters?: object): Promise<void>;
根據(jù)操作名稱執(zhí)行某個(gè)操作,使用Promise異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
actionName | string | 是 | 表示屬性的名稱。 |
parameters | object | 否 | 表示執(zhí)行操作時(shí)所需要的參數(shù);當(dāng)前版本暫不支持。 |
返回值:
類型 | 說明 |
---|---|
Promise<void> | 無返回結(jié)果的Promise對(duì)象。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300005 | This action is not supported. |
示例:
- let rootElement;
- try {
- rootElement.performAction('action').then((data) => {
- console.info('perform action success');
- }).catch((err) => {
- console.log('failed to perform action, because ' + JSON.stringify(err));
- });
- } catch (exception) {
- console.log('failed to perform action, because ' + JSON.stringify(exception));
- }
performAction(actionName: string, callback: AsyncCallback<void>): void;
根據(jù)操作名稱執(zhí)行某個(gè)操作,使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
actionName | string | 是 | 表示屬性的名稱。 |
callback | AsyncCallback<void> | 是 | 回調(diào)函數(shù),表示執(zhí)行指定操作的回調(diào)。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300005 | This action is not supported. |
示例:
- let rootElement;
- try {
- rootElement.performAction('action', (err, data) => {
- if (err) {
- console.error('failed to perform action, because ' + JSON.stringify(err));
- return;
- }
- console.info('perform action success');
- });
- } catch (exception) {
- console.log('failed to perform action, because ' + JSON.stringify(exception));
- }
performAction(actionName: string, parameters: object, callback: AsyncCallback<void>): void;
根據(jù)操作名稱執(zhí)行某個(gè)操作,使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
actionName | string | 是 | 表示屬性的名稱。 |
parameters | object | 是 | 表示執(zhí)行操作時(shí)所需要的參數(shù);當(dāng)前版本暫不支持。 |
callback | AsyncCallback<void> | 是 | 回調(diào)函數(shù),表示執(zhí)行指定操作的回調(diào)。 |
錯(cuò)誤碼:
以下錯(cuò)誤碼的詳細(xì)介紹請(qǐng)參見無障礙子系統(tǒng)錯(cuò)誤碼。
錯(cuò)誤碼ID | 錯(cuò)誤信息 |
---|---|
9300005 | This action is not supported. |
示例:
- let rootElement;
- let actionName = 'action';
- let parameters = {
- 'setText': 'test text'
- };
- try {
- rootElement.performAction(actionName, parameters, (err, data) => {
- if (err) {
- console.error('failed to perform action, because ' + JSON.stringify(err));
- return;
- }
- console.info('perform action success');
- });
- } catch (exception) {
- console.log('failed to perform action, because ' + JSON.stringify(exception));
- }
findElement(type: 'content', condition: string): Promise<Array<AccessibilityElement>>;
根據(jù)節(jié)點(diǎn)內(nèi)容查詢所有節(jié)點(diǎn)元素,使用Promise異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 固定為'content', 表示查找的類型為節(jié)點(diǎn)元素內(nèi)容。 |
condition | string | 是 | 表示查找的條件。 |
返回值:
類型 | 說明 |
---|---|
Promise<Array<AccessibilityElement>> | Promise對(duì)象,返回滿足指定查詢關(guān)鍵字的所有節(jié)點(diǎn)元素。 |
示例:
- let rootElement;
- let type = 'content';
- let condition = 'keyword';
- let elements;
- try {
- rootElement.findElement(type, condition).then((data) => {
- elements = data;
- console.log('find element success');
- }).catch((err) => {
- console.log('failed to find element, because ' + JSON.stringify(err));
- });
- } catch (exception) {
- console.log('failed to find element, because ' + JSON.stringify(exception));
- }
findElement(type: 'content', condition: string, callback: AsyncCallback<Array<AccessibilityElement>>): void;
根據(jù)節(jié)點(diǎn)內(nèi)容查詢所有節(jié)點(diǎn)元素。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 固定為'content',表示查找的類型為節(jié)點(diǎn)元素內(nèi)容。 |
condition | string | 是 | 表示查找的條件。 |
callback | AsyncCallback<Array<AccessibilityElement>> | 是 | 回調(diào)函數(shù),返回滿足指定查詢關(guān)鍵字的所有節(jié)點(diǎn)元素。 |
示例:
- let rootElement;
- let type = 'content';
- let condition = 'keyword';
- let elements;
- try {
- rootElement.findElement(type, condition, (err, data) => {
- if (err) {
- console.error('failed to find element, because ' + JSON.stringify(err));
- return;
- }
- elements = data;
- console.info('find element success');
- });
- } catch (exception) {
- console.log('failed to find element, because ' + JSON.stringify(exception));
- }
findElement(type: 'focusType', condition: FocusType): Promise<AccessibilityElement>;
根據(jù)焦點(diǎn)元素類型查詢節(jié)點(diǎn)元素,使用Promise異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 固定為'focusType', 表示查詢的類型為節(jié)點(diǎn)的焦點(diǎn)元素類型。 |
condition | 是 | 表示查詢焦點(diǎn)元素的類型。 |
返回值:
類型 | 說明 |
---|---|
Promise<AccessibilityElement> | Promise對(duì)象,返回滿足指定查詢焦點(diǎn)元素類型的節(jié)點(diǎn)元素。 |
示例:
- let rootElement;
- let type = 'focusType';
- let condition = 'normal';
- let element;
- try {
- rootElement.findElement(type, condition).then((data) => {
- element = data;
- console.log('find element success');
- }).catch((err) => {
- console.log('failed to find element, because ' + JSON.stringify(err));
- });
- } catch (exception) {
- console.log('failed to find element, because ' + JSON.stringify(exception));
- }
findElement(type: 'focusType', condition: FocusType, callback: AsyncCallback<AccessibilityElement>): void;
根據(jù)焦點(diǎn)元素類型查詢節(jié)點(diǎn)元素,使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 固定為'focusType', 表示查詢的類型為節(jié)點(diǎn)的焦點(diǎn)元素類型。 |
condition | 是 | 表示查詢焦點(diǎn)元素的類型。 | |
callback | AsyncCallback<AccessibilityElement> | 是 | 回調(diào)函數(shù),返回滿足指定查詢焦點(diǎn)元素類型的節(jié)點(diǎn)元素。 |
示例:
- let rootElement;
- let type = 'focusType';
- let condition = 'normal';
- let element;
- try {
- rootElement.findElement(type, condition, (err, data) => {
- if (err) {
- console.error('failed to find element, because ' + JSON.stringify(err));
- return;
- }
- element = data;
- console.info('find element success');
- });
- } catch (exception) {
- console.log('failed to find element, because ' + JSON.stringify(exception));
- }
findElement(type: 'focusDirection', condition: FocusDirection): Promise<AccessibilityElement>;
根據(jù)下一焦點(diǎn)元素方向查詢節(jié)點(diǎn)元素,使用Promise異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 固定為'focusDirection', 表示查詢的類型為節(jié)點(diǎn)的下一焦點(diǎn)元素方向。 |
condition | 是 | 表示查詢下一焦點(diǎn)元素的方向。 |
返回值:
類型 | 說明 |
---|---|
Promise<AccessibilityElement> | Promise對(duì)象,返回滿足指定查詢下一焦點(diǎn)元素方向的節(jié)點(diǎn)元素。 |
示例:
- let rootElement;
- let type = 'focusDirection';
- let condition = 'up';
- let element;
- try {
- rootElement.findElement(type, condition).then((data) => {
- element = data;
- console.log('find element success');
- }).catch((err) => {
- console.log('failed to find element, because ' + JSON.stringify(err));
- });
- } catch (exception) {
- console.log('failed to find element, because ' + JSON.stringify(exception));
- }
findElement(type: 'focusDirection', condition: FocusDirection, callback: AsyncCallback<AccessibilityElement>): void;
根據(jù)下一焦點(diǎn)元素方向查詢所有節(jié)點(diǎn)元素,使用callback異步回調(diào)。
系統(tǒng)能力: SystemCapability.BarrierFree.Accessibility.Core
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
type | string | 是 | 固定為'focusDirection', 表示查詢的類型為節(jié)點(diǎn)的下一焦點(diǎn)元素方向。 |
condition | 是 | 表示下一查詢焦點(diǎn)元素的方向。 | |
callback | AsyncCallback<AccessibilityElement> | 是 | 回調(diào)函數(shù),返回滿足指定查詢下一焦點(diǎn)元素方向的節(jié)點(diǎn)元素。 |
示例:
- let rootElement;
- let type = 'focusDirection';
- let condition = 'up';
- let elements;
- try {
- rootElement.findElement(type, condition, (err, data) => {
- if (err) {
- console.error('failed to find element, because ' + JSON.stringify(err));
- return;
- }
- elements = data;
- console.info('find element success');
- });
- } catch (exception) {
- console.log('failed to find element, because ' + JSON.stringify(exception));
- }
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: