gpt4 book ai didi

ios - 导航栏不显示

转载 作者:技术小花猫 更新时间:2023-10-29 11:18:51 26 4
gpt4 key购买 nike

我有这个问题:我有一个 View Controller (嵌入在导航 Controller 中),在执行操作后触发手动转场推送新 View Controller ,但是在新的 View Controller 中没有导航栏,因为在第一个 Controller 中我实现了 viewWillDisappear 方法,如下所示:

启动 View Controller

- (void)viewWillDisappear:(BOOL)animated {
// Hide the navigation bar just before the view disappear
[[self navigationController] setNavigationBarHidden:YES animated:YES];
}

这是 IBAction 中的手动转场代码:

[self performSegueWithIdentifier:@"tutorialSegue" sender:self];

目标 View Controller

我试过这样

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
[[self navigationController] setNavigationBarHidden:NO animated:NO];
}

但它不起作用,实际上在调试器中我注意到 navigationcontroller 等于 nil 而我只是想不通为什么。

最佳答案

如果您希望 StartViewController 隐藏导航栏,而 DestinationViewController 显示它:在-(void)viewWillAppear:方法中添加相应的代码。

启动 View Controller :

-(void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[[self navigationController] setNavigationBarHidden:YES animated:YES];
}

目标 View Controller :

-(void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[[self navigationController] setNavigationBarHidden:NO animated:YES];
}

如果您希望两个 View Controller 都有导航栏,只需删除所有包含 setNavigationBarHidden:

的行

关于ios - 导航栏不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19379003/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com