2013-04-29 21 views
1

我想弄清楚如何使符合UIKeyInput協議的非UITextField類宣告使用VoiceOver鍵入和刪除的字符,就像UITextField一樣。它應該說出每個輸入略低音調的字符,並且每個字符以更低的音調被刪除。使VoiceOver宣佈UIKeyInput的鍵入/刪除字符

我不希望使用的UITextField因爲:

  1. 用戶必須不能夠選擇文本。
  2. 用戶不能更改「光標」的位置。
  3. 必須沒有自動更正。
  4. 文本字段不得公佈「文本字段正在編輯」。
  5. 我不想要UITextField的任何其他副作用。
  6. 該文本字段是一個自定義視圖。

本質上,我正在尋找做iPhone上的電話應用程序的鍵盤選項卡。我試着將這個類符合UITextInput協議,但沒有什麼區別。

+1

澄清,你真的實現了'UITextInput'協議的方法,並在正確的地方調用'inputDelegate'?至少根據WWDC 2012的「iOS輔助功能」視頻,這應該可以在iOS 6中實現自定義文本視圖。 – 2013-05-01 17:01:16

+0

您是對的。我沒有正確實現UITextInput協議方法。 – Endersstocker 2013-05-01 20:16:23

回答

2

事實證明,我沒有正確實施UITextInput協議方法。

影響輸入/刪除字母講的方法是:
-textInRange:
-textRangeFromPosition:toPosition:

影響的類型化/刪除信件講屬性是:
selectedTextRange
beginningOfDocument
endOfDocument