我有一个UITextView,我希望能够切换autocorrectionType。
简单地切换这样的autocorrectionType不起作用。
myTextView.autocorrectionType = UITextAutocorrectionTypeYes;
myTextView.autocorrectionType = UITextAutocorrectionTypeNo;
我用过
myTextView.text = myTextView.text;
和
[myTextView insertText:@" "];
[myTextView deleteBackward];
和
[myTextView setNeedsDisplay];
这些都不起作用......
答案 0 :(得分:1)
当您更改此类属性(包括键盘类型)时,您通常需要“启动”该过程
// Original
myTextView.autocorrectionType = UITextAutocorrectionTypeYes;
... //时间过去了
// Now want to change
myTextView.autocorrectionType = UITextAutocorrectionTypeNo;
BOOL bogusKeyboardMotion = YES; // ivar
[myTextView resignFirstResponder];
[myTextView becomeFirstResponder];
bogusKeyboardMotion= NO;
然后忽略委托方法中的任何委托消息。也许将委托设置为nil然后将其设置回来也可以。
答案 1 :(得分:0)
它只能用于这样的
NSString* textDirty=textContainerView.text;
textContainerView.text=@"";
textContainerView.text=textDirty;
但我想要一个更清洁的解决方案......另外,它只对用户输入的新文本进行拼写检查,而不是整个uitextview文本..