Сделать вкладку UITextField при выполнении textFieldShouldReturn

В настоящее время я пытаюсь сделать вкладку UITextField следующим текстовым полем, когда пользователь нажимает ввод. Я считаю, что мне нужно сделать это внутри моего метода textFieldShouldReturn, но как?

- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
    [textField resignFirstResponder];

    return YES;
}

Я также уже сделал каждое textField делегатом, поместив их в свой viewDidLoad

UserFirstName.delegate = self;
UserLastName.delegate = self;
UserEmail.delegate = self;
UserUser.delegate = self;
UserPassword.delegate = self;

person Chisx    schedule 31.12.2013    source источник
comment
Вы установили делегата текстового поля?   -  person Toseef Khilji    schedule 31.12.2013
comment
Да. определенно   -  person Chisx    schedule 31.12.2013


Ответы (2)


Попробуйте это и измените текстовое поле в соответствии с вашими требованиями.

-(void)textFieldDidEndEditing:(UITextField *)textField
{
  [textField resignFirstResponder];  
  [yournexttextfield becomeFirstResponder];
}
person Aklesh Rathaur    schedule 31.12.2013

Для этого можно использовать теги.

UserFirstName.tag = 1;
UserLastName.tag = 2;
UserEmail.tag = 3;
UserUser.tag = 4;
UserPassword.tag = 5;

И в вашем методе UITextFieldDelegate:

- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
    UITextField* nextTextField = (UITextField *)[textField.superview viewWithTag:(textField.tag + 1)];
    if (nextTextField) {
        [nextTextField becomeFirstResponder];
    }
    [textField resignFirstResponder];
    return YES;
}
person Ilya Dmitriev    schedule 31.12.2013
comment
Спасибо, это полезно, и я уверен, что теги пригодятся. Но у @Aklesh Rathaur есть самый простой способ - person Chisx; 01.01.2014