ScrollRectToVisible не работает по назначению - PullRequest
12 голосов
/ 26 августа 2011

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

Я регистрируюсь для уведомлений в методе viewDidLoad, затем, когда UIKeyboardDidShowNotification отправлено, этот метод называется:

- (void)keyboardWasShown:(NSNotification*)aNotification
{
    NSDictionary* info = [aNotification userInfo];
    CGSize kbSize = [[info objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue].size;

    UIEdgeInsets contentInsets = UIEdgeInsetsMake(0.0, 0.0, kbSize.height, 0.0);
    scrollView.contentInset = contentInsets;
    scrollView.scrollIndicatorInsets = contentInsets;

    [scrollView scrollRectToVisible:activeField.frame animated:YES];
}

Проблема в том, что ничего не прокручивается вообще, не говоря уже о прокрутке до видимого.Что мне здесь не хватает?

Все мои текстовые поля находятся внутри вида прокрутки и т. Д.

Заранее спасибо.

Ответы [ 2 ]

27 голосов
/ 26 августа 2011

Это - аналогичное сообщение, где scrollRectToVisible: работает неправильно, и существует решение, обеспечивающее правильную настройку contentSize. Надеюсь, что поможет!

1 голос
/ 11 апреля 2015

Также снимите отметку с нижних верхних полос ViewController

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...