为啥我不能在我的导航控制器中推送视图控制器?

Posted

技术标签:

【中文标题】为啥我不能在我的导航控制器中推送视图控制器?【英文标题】:Why i can not push a view controller in my navigationController?为什么我不能在我的导航控制器中推送视图控制器? 【发布时间】:2011-09-20 08:05:38 【问题描述】:

在我的基于导航的应用程序中,第一个视图是登录或注册视图。之后,我使用了一个使用选项卡视图控制器的视图。该视图具有三个选项卡项。现在我想创建一个新视图并推入 navigationController。但它不起作用。但是在 tabBarController View 中添加新视图作为 subView 是有效的。我想要导航每个 tabBarItem 的子视图?我怎样才能做到这一点?

【问题讨论】:

【参考方案1】:

见this

在您的情况下,只需创建三个项目并将它们全部设为 UINavigationControllers,就像上面示例中的第一个选项卡项目一样。

【讨论】:

在这个例子中,rootViewController 是 TabBarController 视图。就我而言,我在 TabBarController 视图之前有登录和注册视图。我做了一个基于导航的应用程序。我应该从简单的基于窗口的应用程序开始吗? 是的。基于启动窗口(我的建议,我个人觉得以编程方式更容易)。使用模式视图在初始 UITabBarController 上登录/注册。然后在每个选项卡上都有 UINavigationController ,就像上面的第一个选项卡的示例一样。简单。 最后一件事,当我创建视图并添加 TabBarController 时,我没有得到 Tab Bar Navigation App Delegate。但如果您从 TabBar 应用程序开始,它会自动出现。在我的情况下,我是否必须手动完成。对不起,我对这些东西很陌生。 最好的选择是基于窗口并以编程方式创建所有视图控制器。 mobisoftinfotech.com/blog/iphone/… - 基于窗口的应用程序上的标签栏控制器示例。如果您发现难以以编程方式添加它,也可以使用 IB。

以上是关于为啥我不能在我的导航控制器中推送视图控制器?的主要内容,如果未能解决你的问题,请参考以下文章

从视图控制器显示(例如推送)到导航控制器有效?!为啥?

导航控制器不推送新窗口

使用导航控制器推送和弹出视图控制器:实现

如何正确地动画推送带有透明导航栏和工具栏的视图控制器?

如何使用导航控制器调用视图控制器

当项目使用自动布局时,导航控制器无法在 iOS 7 中推送视图控制器