Проблема с методом textFieldShouldReturn при использовании UITextField вместе с UITextView

У меня есть сгруппированное табличное представление, содержащее 3 раздела и каждую строку на раздел. Первые две строки раздела содержат UITextField (имя и тема - заголовки разделов), а последняя содержит UITextView (сообщение - это заголовок раздела), потому что я хочу чтобы получить данные от пользователя самим этим контроллером.

Два текстовых поля имеют returnKeyType как UIReturnKeyNe xt. Для UITextView на клавиатуре присутствует кнопка «возврат» для ввода новой строки. Поэтому я использовал метод textFieldShouldReturn, чтобы перейти к следующей ячейке, нажав эти кнопки типа возврата в UIKeyboard.

Следующая кнопка будет работать с первым текстовым полем (Имя). Здесь возникает проблема ... Если я нажимаю кнопку «Далее» во второй ячейке, она переходит в UITextView (последняя ячейка) на одну строку вниз. То есть курсор перемещается на одну строку дальше от его исходного положения.

Мой код ...

-(BOOL) textFieldShouldReturn:(UITextField *)textField {
    [textField resignFirstResponder];
    if (textField == nameTextField) {
        [subjectTextField becomeFirstResponder];    
    }
    else if(textField == subjectTextField) {
        [messageTextView becomeFirstResponder];
    }
    return YES;
}

Что мне делать, чтобы все работало нормально? Заранее спасибо ..

6
задан Confused 26 July 2011 в 05:16
поделиться