Как скрыть тост-сообщение от TalkBack по какой-то причине? - PullRequest
0 голосов
/ 18 мая 2019

Для демонстрации специальных возможностей я создаю пример приложения для Android.Кстати, во время создания плохого примера доступности у меня возник вопрос о тосте.По умолчанию каждый раз, когда отображается тост, TalkBack читает тост, и это очень хорошо.

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

Так что в этом случае TalkBack говорит слишком много, и даже TalkBack не будет читать тосты, слепые пользователиМожно прочитать сообщение, которое тост через смахивание.Также тост сообщение не является текстом предупреждения.Поэтому в некоторых случаях я думаю, что нужно скрывать тосты от TalkBack.

Но я не знаю, как это сделать.Я установил один вид в Java и добавил тост сообщения.А затем я установил для параметра ImportantForAccessibility значение НЕТ, но оно не работает.

Мой код приведен ниже.Наконец, я назвал стек, который настраивает тост TalkBack.Спасибо.

imgClick2 = (ImageView)findViewById(R.id.imageView2);
imgClick2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
    Toast toast = new Toast(MainActivity.this);
    TextView messageView = new TextView(MainActivity.this);
        messageView.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS);
    messageView.setText("visible text");

    toast.setView(messageView);
    toast.show();
    }
});
...