作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我的 iPhone 应用程序中有一个 UITextView,我希望能够为其切换自动更正类型。
当用户编辑 TextView 时,我希望将 autocorrectionType 设置为 UIAutocorrectionTypeYes。当 TextView 未被编辑时,我希望将 autocorrectionType 设置为 UIAutocorrectionTypeNo(因为我不希望自动更正生成的任何红点下划线可见)
像这样简单地切换自动更正类型:
myTextView.autocorrectionType = UITextAutocorrectionTypeYes;
myTextView.autocorrectionType = UITextAutocorrectionTypeNo;
好像不行。何时可以切换 autocorrectionType 或更改后的 autocorrectionType 在哪些情况下生效是否有限制?
编辑:
澄清一下:初始化 UITextView 时设置 autocorrectionType 没有问题。当我想更改现有 UITextView 的自动更正类型时,问题就出现了。就我而言,我想在用户编辑 UITextView 时为他们提供自动更正的优势,但不希望在未编辑 UITextView 时用红点下划线指出任何拼写错误——部分原因是我还导出了一个包含 UITextView 作为图像的 UIView。问题是仅仅改变我的 UITextView 的 autocorrectionType 属性的值是行不通的。
最佳答案
下面是针对图像导出场景执行此操作的简单方法:
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView
{
// Turn spell check on
textView.autocorrectionType = UITextAutocorrectionTypeYes;
return YES;
}
- (BOOL)textViewShouldEndEditing:(UITextView *)textView
{
// Turn spell check off and clean up red squiggles.
textView.autocorrectionType = UITextAutocorrectionTypeNo;
NSString *currentText = textView.text;
textView.text = @"";
textView.text = currentText;
return YES;
}
关于objective-c - 如何为现有 UITextView 打开和关闭自动更正类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6867719/
我是一名优秀的程序员,十分优秀!