UIScrollView Обновление contentSize Причины Прокрутка - PullRequest
4 голосов
/ 03 февраля 2011

У меня есть UIScrollView, в котором есть один дочерний вид. Если я установлю contentSize из UIScrollView сразу после создания, все будет работать так, как я ожидаю, и я получу прокрутку.

Проблема в том, что представление в UIScrollView имеет динамический размер. Ширина фиксирована, но высота неизвестна в то время, когда я настраивал просмотр прокрутки.

Когда я выполняю [scrollView setContentSize:CGRectMake(...)] после того, как внутреннее представление делает свое дело, представление прокрутки обновляется до нужного размера, и прокрутка работает. Так что базовая прокрутка работает нормально.

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

Чего мне не хватает?

Ответы [ 2 ]

6 голосов
/ 03 февраля 2011

Почему бы вам также не позвонить [scrollview setContentOffset:CGPointMake(0,0)]; при вызове setContentSize?

0 голосов
/ 31 июля 2011

Чтобы заставить UIScrollView прокручивать только, например. по горизонтали я всегда устанавливаю значение без прокрутки для contentSize равным 0, используя:

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