Привет! Я пытаюсь обеспечить ориентацию экрана в своем приложении, и я прочитал много документов в Интернете, но когда я пытаюсь это сделать, это просто катастрофа (я пробовал эмулятор и iphone).С одной стороны, когда экран повернут в горизонтальное положение, половина видов больше не видна.Их положение слева и справа пусто, плюс, если я открою контроллер следующего вида, а затем поверну снова, я вижу через части второго вида первого вида, это просто ужасно, я не знаю, как это исправить(Исключая блокировку, возможность блокировки ориентации в портретной ориентации).Я знаю, в Android вы можете предоставить различные макеты XML для портрета и ландшафта.Есть ли способ сделать это в iphone?Если так, то как?
каждое из моих представлений состоит из контроллера и .xib. Существует «основной» контроллер, а другие контроллеры называются так:
ayuda=[[AyudaView alloc]
initWithNibName:@"AyudaView"
bundle:nil];
[self.view addSubview:ayuda.view];
также я уже добавил эти методык главному контроллеру:
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];
if(UIDeviceOrientationIsValidInterfaceOrientation(orientation)) {
[self handleInterfaceRotationForOrientation:orientation];
}
}
#pragma mark -
#pragma mark Screen Orientation Handling
- (void)handleInterfaceRotationForOrientation:(UIInterfaceOrientation)interfaceOrientation {
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
[self handleInterfaceRotationForOrientation:interfaceOrientation];
return YES;
}
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {
[self handleInterfaceRotationForOrientation:toInterfaceOrientation];
}
как указано здесь и попытался поиграть с параметром автоматического изменения размера, но он только ухудшается
Большое спасибо
РЕДАКТИРОВАТЬ: хорошо, я читал еще:
http://www.geckogeek.fr/iphone-forcer-le-mode-landscape-ou-portrait-en-cours-dexecution.html
http://www.cocoaosx.com/2011/11/10/rotatingviewcontroller-display-a-different-uiviewcontroller-depending-on-the-rotation-of-the-device/
и в основном я обнаружил, что вы должны создать 2 контроллерано это решение проблематично для меня из-за файлов пера.Я имею в виду, что я также должен был бы создать 2 пера, чтобы удвоить количество кода (или использовать библиотеку выше).Что, если у меня есть значения в моих текстовых полях, я должен просто отправить их?