[prg] Re[3]: Как реализовать перемещение по структурным частям view в talkback п
Приветствую всех!
Правильно. В принципе, все, что необходимо, изложено здесь:
https://developer.android.com/guide/topics/ui/accessibility/custom-views.html
На всякий случай напомню, что на поведение TalkBack влияют изменения двух
фокусов -- клавиатурного и доступности.
Физическое касание экрана приводит к тому, что фокус доступности
перемещается к View в точке касания, что порождает соответствующее
accessibility-событие, озвучиваемое TalkBack.
Тоже самое происходит с фокусом ввода, который перемещается в зависимости от
событий физического ввода, то есть от нажатий клавиш на клавиатуре и т.п.
Иными словами, пользователь в чистом виде не может сам управлять фокусом
доступности. Это делает либо непосредственно View, либо TalkBack,
интерпретируя клавиатурные или жестовые команды (например,
свайпы)соответствующим образом.
Схожий момент и с гранулярной навигацией по текстовому содержимому -- это
касается только TalkBack или других служб доступности.
SpannableString не работают с гранулярной навигацией по текстовому
содержимому. Они позволяют "связать" с определенным фрагментом текста ваш
объект и реализовать нужную логику, например, при касании этого фрагмента
текста. Предполагаемый вариант: по щелчку на соответствующем фрагменте ваш
View либо вызывает announceForAccessibility с нужным текстом, либо меняет
contentDescription (или и то, и другое одновременно).
Более детальные ответы на ваши вопросы требуют написания кода и,
соответственно, его проверки и т.п.
А это уже ваша работа.
Исходное сообщение > Правильно ли я понимаю,что
> для этого мне как раз нужно унаследоваться от класса view и
> переопределить там какой-то метод,или можно использовать текущий метод
> класса textview? Можно ли в этом случае скрывать вложенные
> accessibilityNodeInfo,ведь я хочу реализовать возможность,чтобы эти view
> и скрывались,т.е чтобы текст был снова в одном textview.