TalkBack 可访问性 StaggeredGridLayoutManager 焦点顺序错误

Posted

技术标签:

【中文标题】TalkBack 可访问性 StaggeredGridLayoutManager 焦点顺序错误【英文标题】:TalkBack accessibility StaggeredGridLayoutManager wrong focus order 【发布时间】:2019-06-22 16:57:06 【问题描述】:

所以我正在尝试使用 TalkBack 功能让我的应用程序可以访问。 我正在尝试使用布局管理器 StaggeredGridLayoutManager (Staggered GridView) 遍历 RecyclerView 中的 22 个项目,我希望焦点按照项目位置的顺序排列。

预期示例 -

 | 1 | 2 |
 | 3 | 4 |
 | 5 | 6 |
 | 7 | 8 |

...

但实际顺序是

1,2,3,4,6,7,8,9,11,10,12,19,20,21,22 https://github.com/YoniBagi/StaggeredGridForAccessibility/blob/master/accessibility.gif

现在这里有两个问题:

    不按仓位顺序走。 出于某种原因,在第 12 项时,它会跳转到第 19 项并跳过介于两者之间的那些。

任何解决方案或想法将不胜感激。

代码: https://github.com/YoniBagi/StaggeredGridForAccessibility/tree/master

【问题讨论】:

您提供的代码不足以确定问题所在。请在您尝试使用 TalkBack 的位置显示代码 【参考方案1】:

我找到了解决办法,在Medium上写了一篇文章

link to solution

祝你好运!

【讨论】:

欢迎来到 SO。请务必阅读此页面***.com/help/how-to-answer,了解什么是好的答案。 “鼓励链接到外部资源,但请在链接周围添加上下文,以便您的其他用户了解它是什么以及它为什么存在。”

以上是关于TalkBack 可访问性 StaggeredGridLayoutManager 焦点顺序错误的主要内容,如果未能解决你的问题,请参考以下文章

Android 可访问性识别标题

宣布一个带有 Talkback 的 TextView

Android TalkBack 和片段堆栈

如何将视图设置为可访问性按钮之类的控制器

Flutter:如何将可访问性焦点集中到自定义应用栏

是否有在线模拟屏幕阅读器工具来测试自定义网页? [关闭]