2

我怎样才能focus navigation留在current fragment? Or,我怎样才能将focusable整个片段或带有所有子视图的视图设置为 false?

完整解释:

我正在使我的 Android 应用程序可以访问。

我有这种情况:

单击标题“登录”后,主页片段(A)被登录片段(B)覆盖。正如你在这里看到的:

片段图

单击“登录”后,登录片段获得焦点,直到单击back我希望accessibility focus留在登录片段内(当用户通过焦点导航导航时),而不是继续在片段 A 中的覆盖元素之间跳转。

如何使焦点导航留在片段 B 内?或者,改为:

如何将focusable片段 A 中的所有子视图设置为 false?

谢谢!

4

1 回答 1

0

您需要一个可访问的模式对话框。这是很常见的事情。NCSU 的前可访问性专家 Greg Kraus 就这个主题写了一篇很棒的博客 - https://github.com/gdkraus/accessible-modal-dialog

您基本上需要创建一个大<div>窗口来覆盖您的主窗口,并在主窗口顶部制作 z 顺序。<div>如果希望主窗口显示为禁用,这个大可以设置不透明度。<div>不接受任何输入,因此用户无法将焦点移回主窗口。然后您的登录对话框的 z 顺序将高于<div>.

于 2016-02-16T15:29:14.323 回答