Перечисление ImportantForAccessibility
Перечисление ImportantForAccessibility
задаёт участие элемента в дереве доступности на Android.
Значение пишут в параметре importantForAccessibility
у View.
На iOS поведение близко, но имя параметра общее для обеих систем.
Синтаксис
<View importantForAccessibility="yes" />
Значения
| Значение | Описание |
|---|---|
'auto' |
Система сама решает по типу элемента и дочерним элементам. |
'yes' |
Элемент важен для доступности и попадает в дерево. |
'no' |
Элемент не озвучивается и не получает фокус чтения. |
'no-hide-descendants' |
Сам элемент скрыт, но дочерние элементы остаются доступными. |
Значение по умолчанию: 'auto'.
Пример
Давайте скроем декоративный блок от чтения с экрана:
import { View, Text } from 'react-native';
export default function App() {
return (
<View>
<View importantForAccessibility="no">
<Text>abcde</Text>
</View>
<Text>12345</Text>
</View>
);
}
При чтении с экрана слышен только текст '12345'.
Внутренний 'abcde' пропускается вместе с контейнером.
Пример
Давайте оставим дочерние элементы доступными, скрыв родителя:
import { View, Text } from 'react-native';
export default function App() {
return (
<View importantForAccessibility="no-hide-descendants">
<Text>abcde</Text>
<Text>12345</Text>
</View>
);
}
На экране две строки. Чтение с экрана озвучит обе, не останавливаясь на пустом контейнере.
Смотрите также
-
перечисление
AccessibilityRole,
которое задаёт роль элемента -
перечисление
AccessibilityLiveRegion,
которое управляет озвучкой изменений -
компонент
View,
к которому передаютimportantForAccessibility -
класс
AccessibilityInfo,
который сообщает, активно ли чтение с экрана