Domanda

Ho un'applicazione iPhone che sono attualmente la conversione in un Universal Binary al lavoro con l'iPad. Ho implementato con successo tutto quello che ho bisogno in termini di layout in modo che la piena funzionalità paesaggio è ora supportato nella mia app (modalità ritratto in precedenza ho utilizzato principalmente per visualizzare il contenuto).

Ma, ne ho uno strano problema, e si verifica solo in modalità orizzontale: quando spingo un controller della vista nello stack, ci vuole due rubinetti sul pulsante Indietro per tornare alla vista precedente regolatore! Il primo rubinetto mostra una vista vuota, ma con lo stesso nome sul pulsante di navigazione posteriore lato sinistro, alla seconda battuta prende parte posteriore controllore alla vista precedente come dovrebbe.

Non ho un iPad di prova, in modo da sto contando sul simulatore. Il problema non si presenta su iPhone e non si presenta se si ruota torna a modalità verticale.

La mia app è costituito da una tabbarcontroller con i controller di navigazione caricati per la sua vc di:

//application delegate
- (void)applicationDidFinishLaunching:(UIApplication *)application
//....
WebHelpViewController *vc8 = [[WebHelpViewController alloc] init];
UINavigationController *nv8 = [[UINavigationController alloc] initWithRootViewController:vc8];

[self.tabBarController setViewControllers:[NSArray arrayWithObjects:nv1,nv2,nv3,nv4,nv5,nv6,nv7,nv8,nil]];

Per implementare la capacità del paesaggio, l'UITabBarController viene ignorata per autorotate quando richiesto:

//CustomTabBarController.m
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    return [[(UINavigationController *)self.selectedViewController topViewController] shouldAutorotateToInterfaceOrientation:interfaceOrientation];
}

... funziona bene. A navigare in nuove viste con questo metodo

SomeViewController *vc = [[SomeViewController alloc] init];
[self.navigationController pushViewController:vc animated:YES];
[vc release];

E 'questo solo un errore di simulazione? Come posso risolvere questo problema?

È stato utile?

Soluzione

Sembra un'altra ViewController risponde a:

(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {

Controlla questa prima.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top