如何删除navigationController(iPhone)

时间:2010-11-15 09:53:16

标签: iphone uinavigationcontroller

我的应用程序有几个普通视图(V1,V2),没有navigationController,但是当按下ADD按钮时会创建一个带有navigationController的视图,如下所示:

CreateNewEventViewController.m

- (void)viewDidLoad {
    [super viewDidLoad];


    tableViewController = [[NewEventTableViewController alloc] init];

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

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

所以NewEventTableViewController是一个UITableViewController。完成从表中填充数据后,最后一个单元格是一个保存它的按钮,然后返回到其中一个主视图(V1,V2)。

NewEventTableViewController.m

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

但导航控制器我留了下来。有什么方法可以删除吗?

更新 我试过这个,但我得到的只是一个白色的屏幕。添加新视图后也要删除。 (此代码放在NewEventTableViewController中)

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

更新2 不是我真正需要的,但无论如何我可以使用它。

[self.navigationController.view.superview removeFromSuperview];

它删除了navigationController及其表视图,它显示了我调用CreateNewEventViewController之前的视图。

1 个答案:

答案 0 :(得分:0)

不太清楚为什么要这样做,但有可能隐藏navigationController

self.navigationController.navigationBarHidden = YES;