我使用的是UITextView
,当用户输入三个连续的点.时,它被替换为省略号… (unicode \u2026
__)。如何避免这种情况?我需要用户输入的实际字符串,而不是自动更正的字符串。
注意:我尝试过将autoCorrectionType
设置为.no
,但没有成功。
let textView = UITextView()
textView.delegate = self
textView.translatesAutoresizingMaskIntoConstraints = false
textView.font = UIFont.preferredFont(forTextStyle: .caption1)
以下是委托方法,
func textViewDidChange(_ textView: UITextView) {
print("User entered string: \(textView.string)")
}
发布于 2021-12-14 12:16:24
来自苹果的文档
实例属性
smartDashesType
智能破折号的配置状态。 讨论 使用此属性配置UIKit是否自动将两个连字符转换为en-破折号,将三个连字符转换为em-破折号。此属性的默认值是UITextSmartDashesType.default,它根据键盘类型有选择地启用智能破折号。
奇怪的是,它没有提到将三个连续的句点转换为一个椭圆,但是该功能的部分。
因此,使用:
let textView = UITextView()
textView.smartDashesType = .no
将禁用它--但它也会禁用en-破折号和em-破折号转换。
https://stackoverflow.com/questions/70341712
复制相似问题