У меня есть два viewController, A и B.
Я хочу, чтобы это приложение было только для пейзажа, поэтому в A и B я перезаписываю
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft || interfaceOrientation == UIInterfaceOrientationLandscapeRight);
}
Есть два способа инициализировать B и добавить представление B в качестве подпредставления A.
1.
В viewDidLoad A я получаю объект B через метод инициализации.
B *bController = [[B alloc] init];
b.view.backgroundColor = [UIColor redColor];
[self.view addSubview:b.view];
2.
В viewDidLoad A я получаю объект B через метод initWithNib. В файле Nib Б. Я меняю ориентацию вида на LandScape и изменяю размер вида на (480 300)
Когда я вывожу кадр представления B в методе viewDidLoad B, я получаю другой результат.
Результат «метода 1» — (320 460), хотя устройство было повернуто в альбомную ориентацию, и вид был заполнен на весь экран.
Результат "method2" равен (480 300). Это соответствует моим ожиданиям.
Почему вывод метода 1 не (480 300), а (320 460)?
Спасибо!