我已经为我的文本字段禁用自动矫正的类别,它不显示任何其他自动校正,
但是当我按下空格键两次,仍然会自动创建一个点(。)。
例如,如果我写的“测试”,然后按空格键两次,它会自动变为“测试”。
任何人都知道如何禁用此功能?
非常感谢。
我已经为我的文本字段禁用自动矫正的类别,它不显示任何其他自动校正,
但是当我按下空格键两次,仍然会自动创建一个点(。)。
例如,如果我写的“测试”,然后按空格键两次,它会自动变为“测试”。
任何人都知道如何禁用此功能?
非常感谢。
我找到了一个解决方案 - 它使用UITextFieldTextDidChangeNotification因为这个自动校正应用于后发生。
设置通知
- (void) viewDidLoad {
...
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(textFieldDidChange:)
name:UITextFieldTextDidChangeNotification object:tfTitle];
}
然后,通知处理程序
- (void)textFieldDidChange:(NSNotification *)aNotification
{
if ( [textField.text rangeOfString:@". "].length ) {
// Change text
textField.text = [textField.text stringByReplacingOccurrencesOfString:@". " withString:@" "];
}
}
或许,如果你挂钩的文本字段的委托,然后实现下面的方法:
-(BOOL)shouldReplaceCharactersInRange:(NSRange)aRage withString:(NSString *)aString
您可以检查ASTRING的自动校正的字符串(也许@“”),然后就返回NO。 希望这将不允许@“‘到被替换@’。”