2013-03-11 120 views
2

最近,我一直在努力讓我的應用程序在VoiceOver中運行良好。通常它很簡單直接,但是我想模擬一些系統應用程序的行爲,而且我很難找到API來設置它。如何將iOS VoiceOver轉子添加到自定義視圖中?

特別是,我有興趣爲VoiceOver「轉子」添加一些選項,並在用戶增加和減少值時對其進行響應。然而,儘管蘋果的地圖應用程序等應用程序向轉子添加項目並且能夠響應,但我無法弄清楚如何爲我的應用程序這樣做。

有沒有人成功做到這一點?如果是這樣,怎麼樣?

回答

2

UPDATE:iOS的10終於增加了自定義的轉子項目添加到VoiceOver的能力(不是一回事「操作」轉子項目) - 只需添加UIAccessibilityCustomRotor對象數組到合適的容器視圖的accessibilityCustomRotors

OLD答案

目前還沒有API添加自己的旋翼物品。您只能實現怎樣一些現有的轉子項目的工作:

  1. 「調整值」 - 在這裏你應該返回UIAccessibilityTraitAdjustable特質對accessibilityTraits,然後實現accessibilityIncrement/accessibilityDecrement方法
  2. 「標題」 - 你標記一些視圖作爲UIAccessibilityTraitHeader,那麼這些應該是用戶移動通過視圖當用戶旋轉到「標題」和筆觸向上/向下
  3. OLD UPDATE:「操作」 - 見UIAccessibilityCustomAction

我想你應該提交一個雷達,如果你需要添加自定義項目轉子。

+0

不幸的是,這正是我所看到的。看起來只有蘋果已經成功添加了東西(地圖尤其具有縮放級別,但Google地圖使用「調整值」方法)。 – gaige 2013-03-14 11:32:37

+0

您是否知道如何讓轉子中的'線條'選項出現?儘管在系統設置中選擇了它,但未顯示。我有一個主要基於文本的應用程序,但使用帶單元格的UITableView來佈局文本。 – 2014-04-01 17:28:07

+0

我已經問上述作爲一個單獨的問題:http://stackoverflow.com/questions/22793032/can-i-influence-what-appears-in-the-voiceover-rotor – 2014-04-01 17:42:53

3

使用iOS 8,可以使用-accessibilityCustomActions方法返回一個UIAccessibilityCustomAction對象的數組,代表您想要呈現的動作「轉子風格」。

+0

這確實放大了當前轉子列表您可以調整其工作方式的項目(從2到3,添加「動作」轉子項目)。但它仍然不允許添加自定義的轉子項目。 – 2015-01-14 21:29:21

+1

它允許添加自定義轉子項目;我在我的應用程序中使用這種方法做到了這一點。 – 2015-01-15 05:15:18

相關問題