Как мне узнать, какой UITextField только что вызвал обратный вызов textFieldShouldReturn?

У меня есть несколько UITextFields в представлении.

Я предполагаю, что место для захвата потока UITextField, как только пользователь выходит из него, это реализация метода делегата "textFieldShouldReturn".

Вопрос - В "textFieldShouldReturn"Однако, как я могу сказать, какой из UITextField это вызвал?

Например, предполагая, что на этом этапе мне нужно обновить мою модель данных значением того, что теперь показывает UITextField, поэтому необходимо обновить правильное поле в модели с выравниванием с этим конкретным UITextField.

PS Если есть лучший подход или способ "связывающего" подхода, который мне не хватает, мне было бы интересно

1 ответ

Решение

... или вы можете пропустить все теги и сделать свой экземпляр UITextViews vars и сделать:

- (void)viewDidLoad {
    myTextView1 = [[UITextView alloc] init];
    myTextView2 = [[UITextView alloc] init];
    myTextView3 = [[UITextView alloc] init];
    myTextView4 = [[UITextView alloc] init];
    ......
}

- (void)textFieldShouldReturn:(UITextField *)textField {
    BOOL shouldReturn = NO;

    if (textField == myTextView1)
    {
        shouldReturn = YES;
    }

    ...and so on...

    }

... release the instance vars in the dealloc...

Я предпочитаю этот способ, но другой ответ тоже сработает.

Другие вопросы по тегам