Ответ 1
Снимите флажок "Изменить размер изображения с низа" в инспекторе. Это должно дать вам правильный размер для контроллера представления свободной формы.
Я получаю доступ к размеру рамки просмотра из раскадровки. Ниже приведен мой код для доступа к свойству frame из раскадровки.
SmallView *smallView = [self.storyboard instantiateViewControllerWithIdentifier:@"SmallView"];
CGRect frame = smallView.view.frame;
self.containerView.frame = frame;
В доске объявлений размер кадра вида (200 400). Но когда я получаю доступ к размеру кадра из кода, он всегда дает (320 460). Почему? В приведенном выше коде я получил небольшой объект вида из раскадровки, поэтому какова будет ценность рамки представления в доске объявлений, которая должна отображаться, но она не отображается. Всегда она показывает (320 460).
Для быстрой отладки вы можете проверить приведенный ниже исходный код.
Снимите флажок "Изменить размер изображения с низа" в инспекторе. Это должно дать вам правильный размер для контроллера представления свободной формы.
Устанавливает кадр вида viewController, который может даже не отображаться, не является хорошей практикой. Точка, где вы можете предположить, все на месте - это метод ViewDidLoad viewControllers.