UITextAutocorrectionType

UITextAutocorrectionType

我想在我的应用程序的输入框上禁用自动更正。我找到了一个objective-c的解决方案,如下所示:

    UITextField* f = [[UITextField alloc] init];
    f.autocorrectionType = UITextAutocorrectionTypeNo;

我试过这样做,但没用:
    // in my viewController
    @IBOutlet weak var webAddressInput: UITextField!
    // in my viewDidLoad
    webAddressInput.autocorrectionType = UITextAutocorrectionTypeNo

如何禁用Swift中输入框的自动更正?

最佳答案

斯威夫特对枚举的处理需要一点适应。如果您在文档中搜索uitextaccorrectiontypeno,则会找到雨伞类型uitextaccorrectiontype。
这种类型的快速定义是

enum UITextAutocorrectionType : Int {
    case Default
    case No
    case Yes
}

在Swift中,您使用type.value,因此
UITextAutocorrectionType.No

你的底线是
webAddressInput.autocorrectionType = UITextAutocorrectionType.No

(不过,在查看文档时,我没有看到UITextField上的autocorrectionType属性)

10-08 05:46