我为我的文本字段禁用了自动更正类型,它没有显示任何其他自动更正,
但是当我按两次空格键时,它仍然会自动创建一个点 (.)。
例如,如果我写“test”并按两次空格键,它会自动变为“test”。
任何人都知道如何禁用此功能?
非常感谢。
我为我的文本字段禁用了自动更正类型,它没有显示任何其他自动更正,
但是当我按两次空格键时,它仍然会自动创建一个点 (.)。
例如,如果我写“test”并按两次空格键,它会自动变为“test”。
任何人都知道如何禁用此功能?
非常感谢。
我找到了一种解决方案 - 它使用 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。希望这不会允许 @" " 被替换为 @"。"