Я создаю простое приложение с двумя контроллерами представления, я тестирую код с помощью симулятора iPhone, кажется, что все работает нормально. Проблема возникает, когда я поворачиваюсь из Портрета в Пейзаж или из Пейзажа в портрет. Это логика приложения, приложение всегда запускается в Portrait, у меня есть кнопка, чтобы в первом View переключиться с View1 на View2. На View2 у меня есть еще одна кнопка для переключения с View2 обратно на View1. Допустим, я нахожусь в портретном режиме, я переключаюсь с View1 на View2, затем поворачиваю iPad (в симуляторе) с Portrait на Landscape, когда я переключаюсь с View2, то есть, чтобы вернуться к View1. Экран / вид View1 отображается в режиме Portrait, а экран View2 отображается в фоновом режиме, т.е. часть View2 отображается в фоновом режиме, я полагаю, поскольку View1 изначально находился в режиме Portrait.
Вопрос в том, был ли у кого-то этот вопрос раньше, и если да, то какой-либо код для решения этой проблемы. Во-вторых, как я могу определить в коде, в какой ориентации находится устройство и в какой ориентации находится вид.
Этот метод заключается в переключении в режим просмотра 2:
-(IBAction) switchToView2: (id) sender {
SecondViewController *myViewController = [[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil];
[self.view addSubview: myViewController.view];
[UIView commitAnimations];
}
Этот метод заключается в переключении обратно на View1:
-(IBAction) switchBackToView1:(id) sender {
[self.view removeFromSuperview];
[UIView commitAnimations];
}