如何在iphone sdk中以编程方式关闭自动更正?

时间:2012-08-03 05:08:07

标签: iphone objective-c ios cocoa-touch ios5

  

可能重复:
  iPhone Programming: Deactivate spell check in UITextView

我正在创建一个拼写测验应用。

当我在文本框中输入文本时,因为自动更正为ON,它会显示正确的答案。

我想做以下任何一种情况: (a)以编程方式关闭自动更正或 (b)为用户提供在应用程序中手动关闭自动更正的选项。

请让我知道上述任何一种解决方案。

谢谢!

5 个答案:

答案 0 :(得分:24)

您可以使用以下属性:

myTextField.autocorrectionType = UITextAutocorrectionTypeNo; //in ios 8 use UITextAutocorrectionTypeNo.

根据UITextInputTraits协议here

中的定义

答案 1 :(得分:3)

您可以通过

关闭自动更正功能
textField.autocorrectionType = UITextAutocorrectionTypeNo;

可以通过

开启
textField.autocorrectionType = UITextAutocorrectionTypeYes;

答案 2 :(得分:2)

对于UITextField,您可以通过Interface Builder / Storyboard(大写和键盘类型附近)将'Correction'设置为YES或NO,以编程方式设置它,您可以使用:

UITextField *yourTextField;
yourTextField.autocorrectionType = UITextAutocorrectionTypeNo;

答案 3 :(得分:1)

UITextViewUITextField都实现了UITextInputTraits协议。因此,它们都具有属性autocorrectionType,其本身为UITextAutocorrectionType类型。此属性的默认值为on。您可以在代码中将其设置为UITextAutocorrectiontypeNo(可能在您创建视图时),这将禁用任何自动更正。

答案 4 :(得分:1)

textField.autocorrectionType = UITextAutocorrectionTypeNo;