I am currently restricting the user to write in a text from more than 4 character.
For this i am using this piece of code
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString: (NSString *)string{
if ([textField.text length] == 4)
return NO;
else
return YES;
}
Its working fine and it do not allow the user to write more than 4 character.
But when i try to delete the existing character.The keyboard delete option is not working.
How to solve this problem
When shouldChangeCharactersInRange method is called text field still has an old value and so if its length is 4 you’re stuck. Better way to validate input will be to calculate what string you’re going to have in a field after the change and check if it is valid: