我的应用程序有两个普通视图(V1,V2),没有navigationController,但是按下“添加和添加”按钮会创建一个具有如下所示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];
但我留下的navigationController。有办法把它移走吗?
update我试过了,但我得到的只是一个白色的屏幕。也可以在添加新视图后删除。(此代码放置在NewEventTableViewController中)
[self.navigationController.view removeFromSuperview];
V1 *myV1 = [[V1 alloc] init];
[self.view addSubview:myV1.view];
更新2并不是我真正需要的,但无论如何,我可以使用它。
[self.navigationController.view.superview removeFromSuperview];
它移除navigationController和表视图,并显示调用CreateNewEventViewController之前的视图。
发布于 2010-11-15 11:19:42
不太清楚你为什么要这么做,但是有可能隐藏navigationController。
self.navigationController.navigationBarHidden = YES;
https://stackoverflow.com/questions/4183182
复制相似问题