Здравствуйте Анатолий. Вы писали
> В принципе, все, что необходимо, изложено здесь:
>
https://developer.android.com/guide/topics/ui/accessibility/custom-views.html
Я понял,как добавлять свои вертуальные view,поскольку это было написано
в документации и там было указание на пример,в котором ещё один класс
наследуется от AccessibilityNodeProvider. Теперь возникает вопрос,как
реализовать добавление view при клике по родительскому view,чтобы оно
стало скрытым и на его месте появились дети,ведь в примере этот метод
срабатывает,если система хочет получить от view
AccessibilityNodeProvider,а мне нужно это сделать при клике по view или
по его детям. Также возникает вопрос,как вернуться на предыдущий
уровень,если,к примеру,я нажму кнопку назад. Можно,конечно,получить
AccessibilityNodeInfo от того view,на котором у меня был
фокус,затем,получив родителя,удалить всех детей кроме того,на котором у
меня стоял фокус,после чего сделать этого ребёнка родителем,но я не
уверен,что это правильный подход. Ещё мне непонятно,как получить View
(заголовок,формулу,параграф,ссылку и любой тег) у WebView и заменить его
моим костомным view (просто скорее всего у меня документ с формулами
будет в WebView,поскольку тогда незрячий пользователь сможет
осуществлять структурную навигацию по документу,т.е навигацию по
заголовкам,ссылкам и т.д). Также я прочитал,что вроде я могу
использовать onTouchEvent или onDispatchMotionEvent (названия событий
написаны неточно),но ведь эти события вроде некорректно работают с
talkback и для того,чтобы получить все Action,включая Action_Up,нужно
использовать класс ExploreByTouchHelper,об этом писали здесь.
<https://groups.google.com/d/msg/eyes-free-dev/xnYdzcnhUIM/gj_GneRPBAAJ>Но
в статье,на которую Вы мне дали ссылку написано,что делегаты нужно
использовать вроде до android 4.0,а с android 4.0 нужно переопределять
методы класса view. Ещё Вы пишете
> например, при касании этого фрагмента
> текста.
Получается,что Вы предлагаете мне вернуться на тот вариант,который
изначально был сделан разработчиками quest player. они в
классе,унаследованном вроде от ScrollMovementMethod использовали событие
OntouchEvent,или похожее и определяли по координатам,на какую ссылку я
нажал,но для меня лично этим пользоваться было очень неудобно,и я очень
редко мог попадать на ссылки. К тому же при касании view talkback не
читает символа,который у меня под пальцами,а читает весь текст или
ContentDescription view,которого я касаюсь. А когда я мучился со
ссылками,не зная как сделать их доступными для нас,я вообще сломал и эту
возможность и только благодаря Вам я смог сделать ссылки в qsp
доступными для нас. Хотя я вроде видел TextView,в котором если
я,используя детализацию по символам,становлюсь на ссылку и кликаю на
неё,она открывается в клиенте,предназначенном для открытия ссылок такого
типа,но я не представляю,как это реализовать с exec ссылками в
qsp,поскольку сейчас можно открывать ссылки только используя угловые
жесты talkback и находя ссылку в списке ссылок,а вот если я кликаю ровно
на эту ссылку,то ничего не происходит. Вообще очень жаль,что вроде на
developer.android.com нету раздела или статьи,которая бы описывала,как
сделать ссылки кликабельными для незрячих и чтобы понять этот
секрет,нужно усердно читать исходники talkback. Поэтому Ваш пример с
ClickSpan показывает,как не нужно разрабатывать приложения,чтобы они
были полностью доступны для незрячих. Если я не прав,то поправьте меня
пожалуйста,просто единственный вариант,на мой взгляд,как кликать по
ClickSppan,это сделать виртуальную иерархию view. Кстати правильно ли я
понял,что этот вариант,на котором я пока что остановился,поможет
перемещаться по формуле не только с сенсора,но и с клавиатуры,ведь я по
сути перемещаюсь по view,хоть они и виртуальны? Заранее благодарю Вас за
помощь.