У меня возникли проблемы с выяснением, когда установка auto-contraints
на XIB
применяется в процессе установки вида.Objective-C/Swift (iOS) Когда автоматические ограничения применяются в потоке View/ViewController?
Для более подробного объяснения:
- я установки
XIB
для представления - Я установил «Симуляция Метрики» Размер для iPhone 3,5-дюймовый
- Я добавил автоматические ограничения на на подвиды внутри этой точки зрения
- в View Controller я выполнить определенные операции, зависящие от подвида (
IBOutlet
)frames/bounds
в методеviewDidLoad
- В представлении я выполнить определенные операции, зависящие от подвид (
IBOutlet
)frames/bounds
вawakeFromNib
методом
В этих 2 методов (ViewController::viewDidLoad and View::awakeFromNib
) мнения IBOutlet были загружены, но не ограничения, которые еще не были применены. Фактический кадр по-прежнему установлен на размер iPhone 3.5 "(ширина 320) при использовании более крупного симулятора (например, симулятора iPhone 6).
Когда применяются эти автоматические ограничения и когда должны выполняться какие-либо необходимые операции фактический кадр/пределы подвидов имеют место?
Я использую XCode 6.3, Swift (1,2)
Perfect. Благодаря! – pkearney06
не работает иногда –
При работе с пользовательским подклассом UITableViewCell это само по себе не обновляло фреймы сразу; только прокручивая камеру и снова заставляя ее выкладываться. Добавление 'setNeedsLayout(); layoutIfNeeded' в конце моего переопределения 'updateConstraints', похоже, исправил его. Удивительно, но замена 'layoutIfNeeded' на' layout' не сработала, даже после 'setNeedsLayout'. –