2012-09-24 135 views
3

有沒有簡單的方法在UITextField的插入位置插入文本?我有一些特殊字符的自定義鍵盤,我很難完成這項工作。我做不是允許任意輸入,鍵盤限制在20個左右的特殊字符,其他所有字符都被拒絕。插入文本到UITextField插入位置

The method of using the global clipboard to insert是一個糟糕的,因爲隨着VoiceOver打開它說「粘貼」,而不是每次使用時插入的字符。這不夠好。

尋找任何替代解決方案似乎相當困難,因爲都只是參考粘貼解決方案。

回答

6

的解決方案是簡單的比我想象:

[self insertText:string]; 
UIAccessibilityPostNotification(UIAccessibilityAnnouncementNotification, string); 

這將有選擇,插入位置等正常工作。人。

但它會而不是當宣佈輸入的字符串時使用適當的音調。 VoiceOver在宣佈插入的文本時使用更深的聲音,我放了一個separate question on how to control the tone of VoiceOver

0

UITextField實現UITextInput協議,因此具有'selectedTextRange'屬性,該屬性返回選擇內容或光標位置。請閱讀它,因爲您可以從該協議中所需的方法中獲得大量有趣的信息。