Вы можете добавить этот метод в свой класс UITextFieldDelegate, и он будет выполняться каждый раз, когда вы вводите текст в текстовое поле:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSCharacterSet *set = [NSCharacterSet punctuationCharacterSet];
NSRange setRange = [string rangeOfCharacterFromSet:set];
if (setRange.location == NSNotFound)
{
textField.textColor = [UIColor redColor];
}
else
{
textField.textColor = [UIColor greenColor];
}
return YES;
}