最近开始学习ios开发。我通过嵌入 UINavigationController
创建了一个项目,因为我需要一个标题栏。但是我可以通过使用对象库中的 UINavigationBar
来实现相同的目的。
我看到的唯一区别是,当我使用 UINavigationController
时,我会在使用 segue 时得到一个后退按钮。它们之间还有什么区别吗?在什么情况下使用哪个?
顺便说一下,为什么另一个 NavigationController
被添加到我的 Storyboard?它的意义是什么?(我看过的任何视频都没有解释过)
谢谢。
最佳答案
NavigationController
自动处理它自己的 UINavigationBar
并且还处理您的 viewController 的导航堆栈,NavigationController
有一个委托(delegate),您可以使用它来知道你的 viewControllerNavigationStack 等发生了什么
例如,使用 NavigationController
的委托(delegate),您可以在以下情况下收到通知:
NavigationController 将显示一些 viewController,使用此方法:
- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
;NavigationController 确实显示了一些 viewController,使用此方法:
- (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated;
例如,您还可以使用 NavigationController
进入导航堆栈上的特定 viewController,或者您可以在没有 segue 的情况下弹出和推送 viewController
关于ios - 使用 UINavigationController 和 UINavigationBar 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38103142/