Сначала добавьте цель для UIControlEventEditingChanged вашего текстового поля:
[textField addTarget:self action:@selector(onEdit:) forControlEvents:UIControlEventEditingChanged];
добавьте свойство BOOL в ваш класс:
@property(nonatomic, assign) BOOL formatting;
, затем создайте метод onEdit: следующим образом:
-(void)onEdit:(UITextField*)field {
//if you have more than one text field you can check for the one you need to format
if(!self.formatting) {
NSString* formattedText = ...//get the formatted text according to your rules
self.formatting = YES;//infinite loop prevention
field.text = formattedText;
self.formatting = NO;
}
}