【问题标题】:UIStoryBoard load rootControllerUIStoryBoard 加载 rootController
【发布时间】:2013-01-26 05:21:54
【问题描述】:

我的应用程序中有 UIStoryBoard 方法,它具有以下模式的屏幕:

UINavigationController -> MyMainController -> UITabBarController-> UINavigationController -> MyHomeController

从 MyHomeController 有一个 UIButton 和它的动作是

UINavigationController -> MyDetailsController

现在,我想从 MyDetailsController 回到 MyMainController。我面临的问题是我没有以黑色突出显示 UINavigationController 以从 MyDetailsController 访问。

另外,UIStoryBoard 不必根据 Identifier 获取 UIViewController。

它有但实例化了一个 UIViewController,这不是一个更好的解决方案。

- (id)instantiateViewControllerWithIdentifier:(NSString *)identifier

【问题讨论】:

  • 为什么不让标签栏控制器成为根控制器?
  • @rdelmar 我不希望 UITabBar 在 MyMainController 的底部。
  • 然后您可以在该控制器在屏幕上时隐藏标签栏。使用底部的标签栏,结构会更加简单明了。但整体设计实际上取决于您在所有这些不同的控制器中所做的事情。
  • @rdelmar 我不想显示带有 UITabBar 项的 MyMainController。使用您提到的方法,我必须从 UITabBarItems 添加和删除 if,尽管我将隐藏 UITabBar。所以管理它变得有点过度了。
  • 您可能会使用展开转场来回到您的 MyMainController。

标签: ios uiviewcontroller uinavigationcontroller uistoryboard


【解决方案1】:

Uitabbar 控制器优先。然后添加 uinavigation 控制器,然后添加您选择的视图控制器作为导航控制器的根控制器

这篇文章有很好的图片来说明这个问题

General way to pass data to UIViewControllers when using a UITabController

【讨论】:

    猜你喜欢
    • 2016-11-08
    • 1970-01-01
    • 2014-11-09
    • 2013-08-09
    • 2012-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-16
    相关资源
    最近更新 更多