Ciao Ho un problema con la rotazione di un ViewController presentato in Modal in iOS8. Tutto questo funziona bene su iOS7 e versioni precedenti.iOS8 Modal ViewController Problema di rotazione
App Struct:
- RootController (Orientamento supportato: Portrait)
- modale Presentato ViewController (Orientamento supportato: Tutto)
mio problema è quando ho ruotare il dispositivo quando il controller modale is Presented la vista di Modal Controller non è stata ridimensionata al frame del lanscape.
Sembra così:
I metodi di rotazione è stato chiamato e quando si imposta il telaio della vista Paesaggio manualmente l'interazione utente del lato destro (lato schermo grigio) non funzionava.
codice RootController:
codice- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
return UIInterfaceOrientationPortrait;
}
- (NSUInteger) supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait;
}
modale Controller:
- (NSUInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskAll;
}
- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
duration:(NSTimeInterval)duration
{
if (self.presentingViewController != nil) {
[self.presentingViewController willAnimateRotationToInterfaceOrientation:toInterfaceOrientation
duration:duration];
}
}
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
duration:(NSTimeInterval)duration
{
if (self.presentingViewController != nil) {
[self.presentingViewController willRotateToInterfaceOrientation:toInterfaceOrientation
duration:duration];
}
}
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation
{
if (self.presentingViewController != nil) {
[self.presentingViewController didRotateFromInterfaceOrientation:fromInterfaceOrientation];
}
}
- (void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator
{
[super viewWillTransitionToSize:size withTransitionCoordinator:coordinator];
[coordinator animateAlongsideTransition:^(id<UIViewControllerTransitionCoordinatorContext> context) {
} completion:^(id<UIViewControllerTransitionCoordinatorContext> context) {
}];
}
Si può aiutarmi a risolvere questo problema per iOS 8.
Hai impostato la procedura di autoresizingMask sugli elementi dell'interfaccia utente? – Jasper