UITextView сталПервый респондент не работает - PullRequest
9 голосов
/ 29 декабря 2011

У меня есть UIView с UITextView и UITextField в качестве подпредставления.Я хочу, чтобы клавиатура автоматически появлялась при вызове textFieldShouldReturn.

- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
    [textField resignFirstResponder];
    [textView becomeFirstResponder];
    return YES;
}

, но это не работает И по какой-то причине она отображает клавиатуру с курсором на следующей строке в текстовом представлении.Я попытался установить текст nil в textview, но он автоматически вызывает метод textDidChange, и курсор перемещается на новую строку без текста.

enter image description here

Этот же метод работает правильно для UITextField а также хорошо работает с iOS 5.0, но как это исправить в iOS 4.3.Дайте мне знать, если у вас есть альтернатива.

Я что-то упускаю из виду?

1 Ответ

31 голосов
/ 30 декабря 2011

В iOS есть известная ошибка, связанная с отставкой и первым ответчиком в том же цикле выполнения.Попробуйте следующее

[textField resignFirstResponder];
[textView performSelector:@selector(becomeFirstResponder) withObject:nil afterDelay:0.0];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...