У меня есть UITableViewController
с self.editButtonItem
, который активируется, только если в UITextField.text
есть текст.Это способ гарантировать, что пользователь не нажмет «Готово», пока он / она не заполнит это UITextField
чем-либо.Я думаю, что это именно то, что вы ищете.Вот как я это сделал:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
// Logs for seeing patterns, if you so please
NSLog(@"replacementString length = %d",string.length);
NSLog(@"textField.text = %@",textField.text);
NSLog(@"range = (%d,%d)\n\n",range.location,range.length);
if (string.length) {
self.editButtonItem.enabled = YES;
} else if (!string.length && textField.text.length == range.length) {
self.editButtonItem.enabled = NO;
}
return YES;
}
Надеюсь, это поможет