我想在SwiftUI中关闭TextField
的预测文本/自动更正。似乎可以通过UITextField
实现:
Disable UITextField Predictive Text
我检查了Apple文档中的TextField
并用谷歌搜索,但找不到任何有关此的信息。
有人找到禁用TextField的预测文本/自动完成功能的方法吗?
谢谢!
答案 0 :(得分:3)
这应该有效:
.disableAutocorrection(true)
答案 1 :(得分:2)
似乎现在可以使用Xcode 11 Beta5。有一个新的修饰符可以禁用TextField上的自动校正
func disableAutocorrection(_ disable: Bool?) -> some View
答案 2 :(得分:0)
Xcode 12.3 Swift 5.3
如果您需要在多个 TextField
上禁用自动更正,或者确实需要添加其他修饰符,请创建自定义 TextField:
struct TextFieldCustom: View {
let title: String
let text: Binding<String>
init(_ title: String, text: Binding<String>) {
self.title = title
self.text = text
}
var body: some View {
TextField(title, text: text)
.disableAutocorrection(true)
// add any other modifiers that you want
}
}
示例用法:
Form {
Section(header: Text("Details")) {
TextFieldCustom("Field1", text: $field1)
TextFieldCustom("Feild2", text: $field2)
TextFieldCustom("Field3", text: $field3)
}
}