SwiftUI的disableAutocorrection是一个用来管理文本输入自动纠错的修饰符。
基本用法:
TextField("Placeholder", text: $text)
.disableAutocorrection(true)
表示不需要自动拼写修正。
开启disableAutocorrection(true)后,SwiftUI中输入文字时,不再进行拼写检查、自动纠正。
总结
在iOS 14+ 版本中,disableAutocorrection正常工作。在iOS 13及以前版本中,可能存在不生效的情况。
在TextField上行为最稳定,对TextEditor的支持性差一些。因为TextEdit是UIKit的UITextView封装,某些输入法不会完全遵守autocorrection原则。
通常配合autocapitalization(控制文本大小写)使用:
TextEditor(text: $text)
.disableAutocorrection(true)
.autocapitalization(.none)
在iPadOS上可能会显示拼写建议,特别是使用外接键盘时。
