UIScrollView вызывает layoutSubviews () каждый раз при прокрутке - PullRequest
6 голосов
/ 03 мая 2010

Я создал подкласс UIScrollView (IPhone SDK) и переопределил (недействительный) layoutSubviews; метод. Я заметил, что каждый раз при прокрутке scrollView вызывается этот метод.

Это правильное поведение или в моем коде есть ошибки? Если это поведение по умолчанию, разве это не убийца производительности?

С уважением, Heinrich

1 Ответ

11 голосов
/ 06 мая 2010

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

вырез из документации на эту тему:

Подклассы также могут быть контейнерами для другие взгляды. В этом случае просто переопределить назначенный инициализатор, initWithFrame :, чтобы создать представление иерархия. Если хотите программно заставить макет подпункты перед розыгрышем, отправьте setNeedsLayout для представления. Тогда, когда layoutIfNeeded вызывается, Метод layoutSubviews вызывается просто перед отображением. Подклассы должны переопределить layoutSubviews для выполнения Любое нестандартное расположение подпредставлений.

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