跳到主要内容
版本:v2

无障碍

无障碍 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 已启用?' + vo.value);
}

async speak() {
var value = await Modals.prompt({
title: "要朗读的内容",
message: "输入要朗读的内容"
});

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