我正在尝试在 UICollectionView 中实现可访问性,该代码与其他 2 个 UI 元素一起位于 viewController 中。

collectionView(水平滚动)中有 3 个单元格,第二个单元格当前可见。

现在,我单击第一个 UI 元素,如果我通过可访问性导航到 collectionView,那么它会将我带回到第一个单元格而不是第二个单元格(这是默认行为)。

我如何实现它,当我通过可访问性从第一个 UI 元素导航到 collcetionView 时,它会到达最后一个可见单元格(在这种情况下是第二个单元格)?

最佳答案

真实世界场景:
在现实世界中,使用辅助功能的用户不会点击 View 。
解决方案:

  • 所以使用 accessibilityIncrementaccessibilityDecrement 滚动浏览 UICollectionView
  • 实现这些方法后,画外音会建议如何导航(一根手指向上/向下滑动)。
  • accessibilityElements 是一个数组,如果你想改变元素的顺序,你可以设置
  • 必要时也发布 layoutChangedscreenChanged,以便可访问性知道
  • 的变化

    引用:
  • 文档 - https://developer.apple.com/library/archive/featuredarticles/ViewControllerPGforiPhoneOS/SupportingAccessibility.html
  • 演示:https://developer.apple.com/videos/play/wwdc2018/230/
  • 关于ios - 更改 UICollectionView 的默认可访问性行为,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50754172/

    10-11 04:28