Есть ли способ игнорировать элемент доступности только при навигации по свайпам? - PullRequest
1 голос
/ 10 июня 2019

Как вы, возможно, знаете, режим iOS VoiceOver предоставляет два способа навигации по элементам на экране.Один касается непосредственно внутри рамки элемента интерфейса, а другой - обход элементов по порядку, проводя пальцем влево или вправо в любом месте экрана.

Теперь наше приложение имеет UITableViewс кнопкой в ​​каждой ячейке, которая редко используется, но все еще имеет важное функциональное значение.

Чтобы быстрее просматривать таблицу, наши пользователи просят нас настроить режим VoiceOver в нашем приложении так, чтобы оно пропускалосьчтение заголовка этой кнопки только при навигации с помощью пролистывания.Не могу использовать accessibilityElementsHidden здесь, так как кнопка все еще должна быть обнаружена пользователем, касающимся ее непосредственно, когда она действительно необходима.Но при навигации по свайпам, программа чтения с экрана должна игнорировать ее.(accessibilityElementsHidden отключает его для обоих режимов навигации, делая кнопку полностью недоступной для пользователей VoiceOver)

Мы перебрали UIAccessibilityTraits, но безрезультатно.Знаете ли вы, как добиться такого поведения?

1 Ответ

3 голосов
/ 10 июня 2019

Я не думаю, что видел такое поведение - пропускал фокусируемые элементы - в любом приложении. Вместо этого ячейки табличного представления, в которых есть кнопки, как правило, предоставляют функциональность кнопок как «настраиваемое действие» . Когда VoiceOver сфокусируется на ячейке, он сообщит пользователю, что пользовательские действия доступны, и пользователь может провести пальцем вверх или вниз, чтобы изменить действие, вызываемое при активации элемента / ячейки (двойным касанием).

Таким образом, одно касание переместит фокус с одной ячейки на другую, и функциональность кнопок по-прежнему доступна.

...