Отправляет email-рассылки с помощью сервиса Sendsay

За 2017-12-03

[prg] Re[2]: Какое событие textView использует talkback,когда я нажимаю на ссылк

Здравствуйте Анатолий. Как раз я имею ввиду клик по ссылке,а не по
view,поскольку ссылки в данном проекте находятся в textView,а не как
отдельные view и,как я писал,в этом проекте метод,который отвечает за
работу со ссылками вызывается в onTouchEvent,которое находится в
классе,который наследуется от linkMovementMethod и который
устанавливается каждому view со ссылками с помощью метода textView
setLinkMovementMethod,при этом при нажатии на них они обрабатываются в
этой же activity. Может Вы меня не совсем правильно поняли,но я имею
ввиду какое событие делает talkback со ссылкой,когда я в локальном
контекстном меню в пункте ссылки делаю двойной таб по одному из
элементов списка со ссылками,которые содержатся в textView,на котором у
меня стоял фокус перед тем как я вызвал локальное контекстное меню
talkback? Заранее благодарю всех за помощь.

   2017-12-03 15:31:08 (#3533700)

[prg] Re: Какое событие textView использует talkback,когда я нажимаю на ссылку,к

Приветствую всех!

> textView содержат ссылки,но ничего не
> происходит,когда я нажимаю на эти ссылки,хотя у зрячих всё нормально.

TalkBack перехватывает события ввода (касания, жесты и нажатия клавиш).
Если перехваченные касание или жест используется самим TalkBack, то дальше
они не пройдут. Если не используются, то жест или касание перейдут к
активности на переднем плане (а точнее, к View в позиции касания, затем к
родительскому View и так далее вплоть до текущей активности, если где-то на
этом пути обработка события не будет завершена).
Так что сначала убедитесь, что касания пользователя при работающем TalkBack
вообще попадают в вашу активность.

> которое использует talkback,когда я
> выбираю ссылки из списка. Вопрос,какое это событие? Я предполагаю,что
> это событие клика по ссылке в textView.

Правильнее говорить о событии click, а не о событии "клик по ссылке". Куда
попадает событие click, зависит от нескольких обстоятельств. Во-первых,
представлена ли ссылка как самостоятельный элемент Ui (View) или это событие
сразу уходит к TextView.
В любом случае, это событие должно пройти через View.OnClickListener,
установленный для соответствующего элемента Ui. Во-вторых, ещё не факт, что
TalkBack вообще инициирует действие click у соответствующего
accessibility-объекта в TextView при выборе ссылки из списка.
Гораздо проще запросить у PackageManager активность для обработки выбранной
ссылки и вызвать эту активность при помощи startActivity. Если такой
активности в системе не зарегистрировано (то есть не установлено ни одного
пакета для активностей которого указан соответствующий intent-filter) , то и
startActivity не вызывается, а следовательно, с точки зрения пользователя,
ничего не происходит.
Так что придётся обратиться ещё и к исходникам TalkBack, чтобы понять, в
чём дело.

Успехов. Анатолий.

   "i_chay" 2017-12-03 13:48:55 (#3533675)