当我尝试在我的iPhone应用程序(UITextfield
)中编辑文本时,它会自动更正我的输入。
你可以告诉我如何禁用它?
答案 0 :(得分:136)
UITextField* f = [[UITextField alloc] init];
f.autocorrectionType = UITextAutocorrectionTypeNo;
答案 1 :(得分:23)
我在这里找到了一个Swift版本:
myInput.autocorrectionType = .No
另请阅读@MaikelS
的答案Swift 3.0
textField.autocorrectionType = .no
答案 2 :(得分:13)
您可以使用UITextInputTraits
协议来实现此目的:
myInput.autoCorrectionType = UITextAutocorrectionTypeNo;
有关详细信息,请参阅here。
答案 3 :(得分:9)
Interface Builder还有一个下拉字段来禁用它。由于您更有可能在界面构建器中创建文本字段,因此请在那里查找。您可以在“更正”旁边的“属性”检查器中找到它。
答案 4 :(得分:3)
答案 5 :(得分:1)
在 SwiftUI 中,您可以使用 .disableAutocorrection(true)
修饰符。
Hiere 是一个真实的例子:
VStack {
TextField("title", text: $LoginModel.email)
.autocapitalization(.none)
.disableAutocorrection(true)
.foregroundColor(.white)
}
答案 6 :(得分:0)
斯威夫特 5:
这就是我在项目中实现电子邮件地址字段的方式
private let emailTextField: UITextField = {
let tf = CustomTextField(placeholder: "Email address")
tf.keyboardType = .emailAddress
tf.autocorrectionType = .no //disable auto correction
tf.autocapitalizationType = .none //disable default capitalization
return tf
}()
CustomTextField 是我的扩展类(这里不重要)