跳到主要内容
版本:v2

Accessibility

无障碍(Accessibility)API 可以方便地检测用户是否启用了屏幕阅读器,并能够通过已连接的屏幕阅读器以编程方式朗读标签文本。

示例

import { Plugins } from '@capacitor/core';

const { Accessibility, Modals } = Plugins;

Accessibility.addListener('accessibilityScreenReaderStateChange', (state) => {
console.log(state.value);
});

async isVoiceOverEnabled() {
var vo = await Accessibility.isScreenReaderEnabled();
alert('Voice over enabled? ' + vo.value);
}

async speak() {
var value = await Modals.prompt({
title: "Value to speak",
message: "Enter the value to speak"
});

Accessibility.speak({value: value.value});
}

API

isScreenReaderEnabled()

isScreenReaderEnabled() => Promise<ScreenReaderEnabledResult>

检查设备上是否启用了屏幕阅读器

返回值:

Promise<ScreenReaderEnabledResult>


speak(...)

speak(options: AccessibilitySpeakOptions) => Promise<void>

通过已连接的屏幕阅读器朗读字符串。

参数类型
options
AccessibilitySpeakOptions

addListener(...)

addListener(eventName: 'accessibilityScreenReaderStateChange', listenerFunc: ScreenReaderStateChangeCallback) => PluginListenerHandle

监听屏幕阅读器状态变化(开启/关闭)

参数类型
eventName"accessibilityScreenReaderStateChange"
listenerFunc
(state: ScreenReaderEnabledResult) => void

返回值:

PluginListenerHandle


removeAllListeners()

removeAllListeners() => void

移除此插件的所有原生监听器


接口

ScreenReaderEnabledResult

属性类型
valueboolean

AccessibilitySpeakOptions

属性类型描述
valuestring要朗读的字符串
languagestring朗读字符串时使用的语言,使用其 ISO 639-1 代码(例如:"en")。目前仅在 Android 平台上支持此功能。

PluginListenerHandle

属性类型
remove() => void