2010-11-15 8 views
0

Mon application a quelques vues normales (V1, V2), sans NavigationController, mais quand et ADD bouton est poussé crée une vue avec un NavigationController comme celui-ci:Comment supprimer un NavigationController (iPhone)

CreateNewEventViewController. m

- (void)viewDidLoad { 
    [super viewDidLoad]; 


    tableViewController = [[NewEventTableViewController alloc] init]; 

    navigationController = [[UINavigationController alloc] initWithRootViewController:tableViewController]; 
    tableViewController.navigationController.title = @"Add"; 

    [self.view addSubview:navigationController.view]; 
} 

alors le NewEventTableViewController est un UITableViewController. Lorsque vous avez terminé de remplir les données de la table, la dernière cellule est un bouton pour l'enregistrer, puis revenir à l'une des vues principales (V1, V2).

NewEventTableViewController.m

V1 *myV1 = [[V1 alloc] init]; 
[self.view.superview addSubview:myV1.view]; 

mais le NavigationController j'avais séjours. Un moyen de l'enlever? Je l'ai essayé, mais tout ce que je reçois est un écran blanc. Suppression également après l'ajout de la nouvelle vue. (Ce code est placé dans NewEventTableViewController)

[self.navigationController.view removeFromSuperview]; 
    V1 *myV1 = [[V1 alloc] init]; 
    [self.view addSubview:myV1.view]; 

mise à jour 2 est-ce pas ce que je avais vraiment besoin, mais de toute façon je peux l'utiliser.

[self.navigationController.view.superview removeFromSuperview]; 

il supprime les NavigationController et il est vue de la table et il affiche la vue que j'avais avant d'appeler la CreateNewEventViewController.

+0

Désolé, je ne sais pas vraiment comment le faire sans elle en train d'essayer moi-même :( – willcodejavaforfood

+0

pouvez-vous expliquer ce que vous voulez faire – GhostRider

+0

au lieu d'ajouter l'NavigationController comme sous-vue, pourquoi ne pas utiliser presentModalViewController et dismissModalViewControllerAnimated? – Anna

Répondre

0

Pas grand-chose sûr pourquoi vous voulez faire cela, mais il y a une possibilité de cacher NavigationController

self.navigationController.navigationBarHidden = OUI;

+0

Je wan » t pour le faire parce que je veux seulement le navigationController pour la vue addObject mais pas pour les vues principales de l'application. – framara