announceForAccessibility не работает без Handler (). postDelayed - PullRequest
0 голосов
/ 25 мая 2018

У меня есть EditText для ввода пользователем электронной почты и TextView для отображения ошибки, но значение по умолчанию скрыто и, наконец, кнопка отправки на экране.Мы не можем отобразить сообщение об ошибке, используя TextInputLayout из-за требования, вытекающего из дизайна.

Что происходит, когда пользователь нажимает кнопку отправки, мы вызываем textview.announceForAccessibility("hello");, если адрес электронной почты недействителен.Это работает, если зеленый прямоугольник остается на кнопке отправки, но это не всегда так.Если зеленый прямоугольник на EditText, в режиме обратной связи описывается только EditText и полностью игнорируется сообщение об ошибке.Однако, если я добавлю вторую задержку, это сработает.new Handler().postDelayed(() -> textview.announceForAccessibility("hello"), 1000);

Я не очень понимаю, почему и как правильно решить проблему.

...