2009-05-07 2 views
0

Supposons que j'ai créé un UIView, MyView, dans Interface Builder, et je l'ai accroché vers le haut (définir son fichier de propriétaire) à ma classe UIViewController, MyViewController.Objective-C/Cocoa: chargement correctement UIViews

Maintenant, je voudrais présenter la vue. C'est juste une autre vue, donc je ne veux pas la présenter comme une vue modale.

Comment procéder pour l'afficher? Devrais-je l'ajouter comme sous-vue de ma fenêtre? Si oui, où cela se passe-t-il par rapport à mes autres opinions? Dois-je le présenter comme une vue à part entière, et désactiver les autres vues? Quel est le mécanisme?

Répondre

1

Cela dépend de la façon dont vous voulez que l'application d'agir.

Vous pouvez ajouter MyView en tant que sous-vue de la vue actuelle en utilisant UIView addSubview si vous souhaitez avoir un bouton "Terminé" ou quelque chose comme ça sur MyView pour le supprimer.

// show new view 
MyViewController *myViewController = [[MyViewController alloc]init]; 
[self.view addSubview: myViewController.view]; 

Ou si vous voulez que l'utilisateur de pouvoir pour revenir à la vue principale (comme dans le courrier, les notes, etc.) la façon la plus courante de le faire serait d'ajouter un NavigationController à votre fenêtre et en utilisant pushViewController:animated: pour présenter votre point de vue.

MyViewController *myViewController = [[MyViewController alloc]init]; 
[self.navigationController pushViewController:myViewController animated:YES]; 

Je préfère de loin l'approche navigationController dans la plupart des situations.

Questions connexes