gpt4 book ai didi

ios - UINavigationController 隐藏导航栏

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:50:51 26 4
gpt4 key购买 nike

使用 xcode 4.2 和 iOS 5 并在根 Controller 和其他四个 View (包括 UITable View )上有导航栏,我想要的只是在第一个 Root View Controller 中隐藏导航栏并在所有其他 View 中显示...

尝试关注

[self.navigationController setNavigationBarHidden:YES animated:animated];

没有运气有什么想法吗?

最佳答案

在您的根 Controller (或您想要隐藏导航栏的所有 View Controller 。请参阅 [1])中使用此代码,以便根据您的目标隐藏/显示导航栏:

- (void)viewDidLoad {
...
[self.navigationController setNavigationBarHidden:YES animated:NO];
...
}

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

- (void)viewWillDisappear:(BOOL)animated {
[self.navigationController setNavigationBarHidden:NO animated:animated];
...
}

这只是一个可能的解决方案。您可以在您的非根 Controller 中保留 viewWillDisappear 未定义,并在您的根 Controller 中定义 viewWillAppear ......如您所见最方便。

[1] 将导航栏隐藏在除根 Controller 之外的任何地方,可能会卡在导航层次结构的中间。此外,在 iOS 应用程序中突然隐藏导航栏而不是 Root View 也是违反直观导航的。)

关于ios - UINavigationController 隐藏导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8932770/

26 4 0