2013-04-29 87 views
2

我有兩個問題關於輔助功能和UICollectionViews,我希望得到一些專家的幫助。另一個關於Voice Over讀取命令的問題是here。我創建了一個sample project展示了這兩個問題。UICollectionView部分標題作爲輔助功能標題

我有一個UICollectionView我在那裏提供自定義節標題。這些部分標題是輔助功能元素,並具有可訪問性特徵UIAccessibilityTraitHeader集。啓用Voice Over並且用戶在集合中水平滑動時,標題會正確地通告,甚至會聲明爲標題。但是,如果用戶向上或向下滑動到下一個標題,Voice Over只會在另一個標題可見時跳轉到另一個標題。我假設這是因爲當視圖在集合視圖中不可見時,它將從視圖層次結構中刪除,並且Voice Over不再知道它存在。

你可以拉this example project,運行它,啓用語音轉換,並使用撥號設置向上/向下滑動標題以查看問題。

有沒有一種方法可以讓用戶跳轉到當前不可見的標題?任何幫助將不勝感激。

回答

0

您可能需要使用UICollectionViewscrollToItemAtIndexPath:atScrollPosition:animated:屬性才能在VoiceOver讀取它之前將標題滾動到視圖中。

你可以找到你目前正處於通過indexPathForItemAtPoint:indexPath使用他們感動集合視圖中的位置,然後你知道哪些部分後來了。

+0

我不確定我關注。我不認爲當Voice Over啓用時,您會以傳統方式接收輕按通知;然而,當細胞接收到可訪問性焦點時,我可以進入鉤子。不幸的是,我不知道如何檢測用戶何時上下滑動以知道何時滾動到上一個或下一個部分。我很確定'accessibilityScroll'是三指滾動手勢,而不是我正在尋找的單指滑動。 – 2013-04-29 23:23:53

+0

我真的沒有使用Voice Over足以告訴你。這應該可以幫助你如何將上面的代碼掛接到回調函數中:http://stackoverflow.com/a/15616144/308315 – iwasrobbed 2013-04-29 23:28:50