- [UIView layoutSubviews]; вызывается каждый раз в анимации? - PullRequest
0 голосов
/ 30 января 2011

Я только что написал ответ для кого-то другого, и при тестировании Оказывается, метод layoutSubViews вызывается каждый раз, когда я анимирую некоторые слои (каждый раз, когда срабатывает таймер). Я не изменяю фрейм UIView. layoutSubviews не должен вызываться только один раз в этом случае?

Буду признателен, если кто-нибудь сможет объяснить, почему это происходит

Мой ответ здесь: Угол объекта в зависимости от текущего времени

спасибо

1 Ответ

0 голосов
/ 30 января 2011

Прежде всего, я не уверен, что согласен с вашим связанным ответом: я не вижу, как слои являются более подходящим подходом, чем представления, учитывая, что UIViews по сути являются просто оболочками вокруг CALayer, разработанного для облегчения жизни.

В отсутствие кого-либо еще, я думаю , что происходит, потому что вы добавили свои слои часов в качестве подслоев одного UIView, когда вы преобразовываете эти слои, появляется UIKit, что вы изменили геометрию вашего основного вида, вызывая вызов layoutSubviews.Но это образованное предположение больше всего на свете.Возможно, кто-нибудь придет с лучшей идеей.

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