UITextField How to check if a delete key is pressed
You can get the string that is supposed to be in text field after this method:
NSString *newString = [textField.text stringByReplacingCharactersInRange:range withString:string];
And that newString
you probably can use 'as is' for searching the database.
If you just want to get the event when user deletes some characters in textField - then you can check it the following way:
if ([string length] == 0 && range.length > 0)
//Some characters deleted
for swift users:
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
if string.characters.count == 0 && range.length > 0 {
// Back pressed
return false
}
return true
}
Better idea - in textField:shouldChangeCharactersInRange:replacementString: set up a conditional to return NO when there are no more characters...
if ((range.location == 0) && (string.length == 0))
{
NSLog(@"is cleared!");
return NO;
}
return YES;