2010-05-11 5 views
1

J'essaie de naviguer vers une vue différente dans la vue détaillée du splitviewcontroller. Je ne veux pas que la nouvelle vue s'affiche dans la vue partagée. J'utilise ce code pour changer de vue. Cela fonctionne bien en mode portrait, mais en mode paysage, la vue de la table de vue divisée apparaît toujours. Quelqu'un peut-il aider avec ceci?Ipad SplitViewController naviguant vers une autre vue

Suivant * any = [[Next alloc] initWithNibName: @ "Ensemble suivant": nil];

[self.view addSubview: any.view];

+0

Où voulez-vous que la nouvelle vue apparaisse? – Jordan

Répondre

1

Vous avez plusieurs options.

Vous pouvez afficher Next en tant que contrôleur de vue modale.
Vous pouvez utiliser un contrôleur de tabulation pour basculer entre la vue partagée et la vue suivante.
Vous pouvez utiliser un autre contrôleur de conteneur pour basculer entre la vue partagée et la vue suivante. Sans rien savoir d'autre de votre application, je suppose que vous montrez Next en réponse à une interaction de l'utilisateur dans la vue détaillée, donc je suppose que la présentation de Next en tant que contrôleur de vue modale est la meilleure option. C'est aussi le plus facile.

Voici comment présenter suivante en tant que contrôleur de vue modal:

- (void) showNext 
{ 
    Next* any = [[[Next alloc] initWithNibName:nil bundle:nil] autorelease]; 
    any.modalPresentationStyle = UIModalPresentationFullScreen; 
    any.modalTransitionStyle = UIModalTransitionStyleCoverVertical; 
    [self presentModalViewController:any animated:YES]; 
} 

Vous pouvez utiliser différentes modalPresentationStyle & valeurs modalTransitionStyle pour obtenir différents effets.

Pour ignorer Suivant lorsque vous avez terminé, vous devez indiquer à parentViewController de le fermer. Il suffit d'ajouter ce code suivant, et l'appeler quand vous voulez rejeter le point de vue suivant:

- (IBAction) dismiss 
{ 
    [self.parentViewController dismissModalViewControllerAnimated:YES]; 
} 

Je veux habituellement appeler ce genre de chose à partir d'un bouton Fermer quelque part, donc je fais d'habitude il un IBAction.
IBAction est identique à void, mais vous permet de brancher facilement des éléments dans Interface Builder.

+0

Thk. Je pense que c'est ce que je veux! – nishantcm

Questions connexes