Nie lubię zajmować się tagami, więc oto moje rozwiązanie. Utwórz IBOutletCollection
wszystkich twoich tekstowych pól w swoim ViewController
, przeciągnij, aby połączyć swoje pola tekstowe w kolejności od góry do dołu.
@interface ViewController() <UITextFieldDelegate>
@property (strong, nonatomic) IBOutletCollection(UITextField) NSArray *allTextFields;
@end
W viewDidLoad ustaw swoją delegację textFields. (Lub ustaw go w storyboardie).
for (VVTextField *tf in self.allTextFields) {
tf.delegate = self;
}
Następnie wdrożyć UITextField Delegata
#pragma mark - UITextField Delegate
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
NSUInteger currentIndex = [self.allTextFields indexOfObject:textField];
NSUInteger nextIndex = currentIndex+1;
if (nextIndex < self.allTextFields.count) {
[[self.allTextFields objectAtIndex:nextIndex] becomeFirstResponder];
} else {
[[self.allTextFields objectAtIndex:currentIndex] resignFirstResponder];
}
return YES;
}
Aby oznaczyć jako odpowiedź prawidłowa, wystarczy kliknąć ikonę pusty zaznaczenia obok odpowiedź ... –