我想在我的應用程序的所有文本框禁用自動更正。我知道UITextField上的autocorrectionType
屬性。但是,當我開始開發我的應用程序時,我沒有繼承UITextField。所以我正在尋找一種解決方案,通過一行代碼禁用所有TextField的自動更正。禁用自動校正
我試着用[UITextField appearance]
,它適用於鍵盤外觀:
[[UITextField appearance] setKeyboardAppearance:UIKeyboardAppearanceDark];
但不適合自動更正,因爲下面的代碼行:
[[UITextField appearance] setAutocorrectionType:UITextAutocorrectionTypeNo];
導致不一致的異常:
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Please file a radar on UIKit if you see this assertion.'
有趣的問題。也許這與textFieldDelegate類有關,而不是textField本身。你添加了那個班嗎? – lukaivicev
請您詳細說明一下嗎?不知道你的意思是通過添加'textFieldDelegate'。我開始認爲'UITextField'的外觀代理中沒有實現自動更正屬性,這是一個恥辱:/。也許我應該實際上'在UIKit上提交一個雷達',就像它在異常消息中說的那樣。 – Hless
https://developer.apple.com/library/prerelease/tvos/documentation/UIKit/Reference/UITextInputTraits_Protocol/index.html#//apple_ref/occ/intfp/UITextInputTraits/autocorrectionType檢查出以及這些鏈接:檢查這一點:http://stackoverflow.com/questions/2474824/iphone-issue-disabling-auto-cap-autocorrect-on-a-uitextfield這http://stackoverflow.com/questions/827310/disable-auto-更正iphone-text-field – lukaivicev