При изменении некоторых свойств для UIView он вызывает layoutSubviews
в супервизии. Я не могу найти никаких утверждений об этом в документах.
Эти свойства запускают макет в супервизии и self
- рамка
- Границы
Эти свойства запускают макет только в режиме просмотра только
- преобразовать
- layer.transform
Эти свойства запускают только макет только
- ни один
Эти свойства не вызывают никакого макета
- Центр
- layer.anchorPoint
- layer.position
- альфа
Мне очень сложно понять, что преобразование запускает макет, и эта позиция и anchorPoint этого не делает.
Пример кода: https://github.com/hfossli/LayoutSubviewsInconsistency
Я хочу знать:
- почему я вижу это поведение
- если это действительно несогласованность или я не понимаю некоторые основные понятия
- как избежать супервизора в layoutSubviews каждый раз, когда я меняю преобразование.
Я не могу найти ничего об этом в документах и файлах заголовков. Проблема важна при использовании UIDynamics или аналогичного.