我在View2中添加了一个NavigationBar
和一个“后退”项,然后从该项目ctrl拖动到View1中以添加segue
(一个show
segue)。现在,每当使用“后退”导航到View1时,我都会获得一个到该视图(View1)的导航栏(带有“后退”项)。我只想要导航栏到View2,而不是View1。我总是可以以编程方式隐藏View1的NavigationBar
,但是我想知道自己是否做错了什么。
最佳答案
您需要在ViewWillAppear中隐藏View1的导航栏,并在查看viewWillDisappear时取消隐藏:
视图1:
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.navigationController.navigationBar setHidden:true];
}
- (void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
[self.navigationController.navigationBar setHidden:false];
}
视图2:
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[self.navigationController.navigationBar setHidden:false];
}
- (void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
[self.navigationController.navigationBar setHidden:true];
}
可以在切换控制器时使用view1函数或view2函数中的任何一个类函数来隐藏和取消隐藏导航栏。
关于ios - segue将导航添加到 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43283410/