Вот моя проблема: у моего приложения есть панель инструментов, где вы можете переключаться между представлениями.Основной или, по крайней мере, тот, который запускается, находится в ландшафтном режиме, тогда, если вы переходите в любой другой вид, в портретном режиме.Проблема возникает, когда вы пытаетесь вернуться к первому (альбомному), вид отображается в портретной ориентации, поэтому все виды отображаются неправильно.(Это более или менее ясно? Извините, если кажется грязным).Некоторый код, который у меня есть здесь:
V1Controller:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft);
}
V2Controller:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
-(IBAction)goToV1 {
V1Controller *v1 = [[V1Controller alloc] init];
[self.view.superview addSubview:v1.view];
}
Может быть что-то сделать с объектом v1 перед добавлением представления?Я не знаю, нужна ваша помощь.
Проблема решена В переходе представления мне не хватило одного предложения, удалите текущий вид из суперпредставления.Кроме того, что @Brad говорил.Спасибо.
-(IBAction)goToV1 {
V1Controller *v1 = [[V1Controller alloc] init];
[self.view.superview addSubview:v1.view];
[self.view removeFromSuperview];
}