У меня есть iPad-приложение. В альбомной ориентации UIViewController
вид фактической ширины = 1024px
и height = 768-20 (statusBar) - 44 (navigationBar) = 704px
.
Итак, я хочу получить этот размер [1024 x 704]
, и я использую self.view.bounds
для него. Он возвращает [748 x 1024]
, что неверно! Но когда я поворачиваю экран дважды (текущий → портрет → текущий), границы обзора верны - [1024 x 704]
.
Представление было инициализировано следующим образом:
- (void)loadView {
self.view = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
self.view.backgroundColor = [UIColor lightGrayColor];
}
И границы были такими:
- (void)viewDidLoad {
[super viewDidLoad];
NSLog(@"bounds = %@", NSStringFromCGRect(self.view.bounds));
}
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {
NSLog(@"bounds = %@", NSStringFromCGRect(self.view.bounds));
}
Итак, вопрос в том, как.. Как я могу получить правильную оценку в самом начале?