UICollectionView部分标题作为辅助功能标题

问题描述:

我有两个问题关于辅助功能和UICollectionViews,我希望得到一些专家的帮助。另一个关于Voice Over读取命令的问题是here。我创建了一个sample project展示了这两个问题。UICollectionView部分标题作为辅助功能标题

我有一个UICollectionView我在那里提供自定义节标题。这些部分标题是辅助功能元素,并具有可访问性特征UIAccessibilityTraitHeader集。启用Voice Over并且用户在集合中水平滑动时,标题会正确地通告,甚至会声明为标题。但是,如果用户向上或向下滑动到下一个标题,Voice Over只会在另一个标题可见时跳转到另一个标题。我假设这是因为当视图在集合视图中不可见时,它将从视图层次结构中删除,并且Voice Over不再知道它存在。

你可以拉this example project,运行它,启用语音转换,并使用拨号设置向上/向下滑动标题以查看问题。

有没有一种方法可以让用户跳转到当前不可见的标题?任何帮助将不胜感激。

您可能需要使用UICollectionViewscrollToItemAtIndexPath:atScrollPosition:animated:属性才能在VoiceOver读取它之前将标题滚动到视图中。

你可以找到你目前正处于通过indexPathForItemAtPoint:indexPath使用他们感动集合视图中的位置,然后你知道哪些部分后来了。

+0

我不确定我关注。我不认为当Voice Over启用时,您会以传统方式接收轻按通知;然而,当细胞接收到可访问性焦点时,我可以进入钩子。不幸的是,我不知道如何检测用户何时上下滑动以知道何时滚动到上一个或下一个部分。我很确定'accessibilityScroll'是三指滚动手势,而不是我正在寻找的单指滑动。 – 2013-04-29 23:23:53

+0

我真的没有使用Voice Over足以告诉你。这应该可以帮助你如何将上面的代码挂接到回调函数中:http://*.com/a/15616144/308315 – iwasrobbed 2013-04-29 23:28:50