导航控制器 - 如何在 Xcode 中添加另一个视图控制器?
Posted
技术标签:
【中文标题】导航控制器 - 如何在 Xcode 中添加另一个视图控制器?【英文标题】:Navigation Controller - How to Add in Another View Controller in Xcode? 【发布时间】:2014-01-16 21:09:02 【问题描述】:我对 ios 编程比较陌生,但我正在一点一点地学习。我有两个 nib 文件,一个是我的 HomeViewController,另一个是“ReceiptTableViewController”。 HomeVC 不应该有一个顶部导航栏,但 ReceiptTableVC 应该有一个标题和“返回”,用户可以在其中滑动以返回 HomeVC。
我将如何添加这个?我已将导航控制器拖到 nib 文件中的 ReceiptTableVC 一侧。
我搜索了各种答案,但有些答案相互矛盾,因为作者使用不同版本的 Xcode,有些从故事板等开始。
非常感谢任何帮助!
我没有使用故事板【问题讨论】:
【参考方案1】:你可以使用这个方法来决定你的navigationBar是否显示在你的viewController中。[self.navigationController setNavigationBarHidden: animated:];
在你的AppDelegate
:
UINavigationController *naviController = [[UINavigationController alloc] initWithRootViewController:homeController];
naviController.navigationBarHidden = YES; //set home controller navigation bar hidden.
self.window.rootViewController = naviController;
然后在你ReceiptTableViewController
的viewDidLoad方法中:
[self.navigationController setNavigationBarHidden:NO animated:NO]; // show the navigation bar.
这是以编程方式声明UINavigationController
的方法。你可以试一试。
【讨论】:
感谢您的帮助!不幸的是,它返回一个错误 - '使用未声明的意图'动画',所以我将'动画'更改为'否',认为它不会被隐藏。这没有带来任何错误,但也没有显示“返回”按钮和导航栏的其余部分。[self.navigationController setNavigationBarHidden:NO animated:YES];
你把动画当成变量了吗??
我试过了,它仍然没有显示,我是否应该在将导航控制器拖到我的 nib 文件中后将它链接到任何东西?我为我的愚蠢道歉,我对这一切都是新手。感谢您的帮助!
推送第二个视图控制器时是否得到了正常的推送行为?我之前没有在 xib 中声明导航控制器。我更喜欢通过程序来做。但是我认为如果你在 xib 文件中拖动,你应该有一个导航控制器的子类。以上是关于导航控制器 - 如何在 Xcode 中添加另一个视图控制器?的主要内容,如果未能解决你的问题,请参考以下文章
在导航控制器不工作的情况下快速展开 segue Xcode 10
如何在使用 UIpageviewcontroller 导航页面时从另一个视图控制器自动更新视图控制器上的标签
xcode / storyboard:无法将栏按钮拖动到顶部的工具栏
如何在 Xcode Interface Builder 中将导航项添加到 Table View Controller(带有静态单元格)?