出于可访问性演示目的,我正在创建android示例应用。 顺便说一下,在创建不良示例可访问性期间,我有一个关于吐司问题的问题。默认情况下,每次显示吐司时,TalkBack都会阅读吐司,这非常好。
但是有时候我想在“话语提示”中隐藏吐司,以使“话语提示”不会阅读该吐司消息。当然,“话语提示”必须阅读所有祝酒消息,以便在没有屏幕阅读器用户的情况下提供相同的信息。但是有时在某些应用中,太多的吐司消息会出现在屏幕上,甚至同一条消息也会留在屏幕上。
因此,在这种情况下,“话语提示”说的太多了,甚至“话语提示”也不会阅读祝酒词,盲人用户可以阅读通过滑动而敬酒的消息。 敬酒消息也不是警报文本。因此,在某些情况下,我认为需要在TalkBack中隐藏吐司。
但是我不知道该怎么做。我在Java中设置了一个视图并添加了Toast消息。然后我将ImportantForAccessibility设置为NO,但这是行不通的。
我的代码如下。 最后,我将其称为自定义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();
}
});