如何使可访问性焦点保持在当前片段内

时间:2016-02-16 10:40:36

标签: android android-fragments accessibility focusable android-accessibility

如何让focus navigation留在current fragment?内 或者,如何将整个片段或视图的focusable设置为false以及其所有子视图?

完整说明:

我可以访问我的Android应用。

我遇到这种情况:

单击标题"登录"后,登录片段(B)覆盖

主片段(A)。正如你在这里看到的那样:

fragments diagram

点击"登录",登录片段获得焦点,直到点击back我希望accessibility focus留在登录片段内(当用户浏览时)聚焦导航)而不是在片段A中的覆盖元素之间跳跃。

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

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

谢谢!

1 个答案:

答案 0 :(得分:0)

您需要一个可访问的模式对话框。这是一件非常普遍的事情。 NCSU前无障碍大师Greg Kraus写了一篇关于这个主题的精彩博客 - https://github.com/gdkraus/accessible-modal-dialog

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