如何在iOS中创建混合的“Master-Detail和Tabbar”应用程序

时间:2013-05-16 11:15:45

标签: ios ipad ios6 uisplitviewcontroller

我正在尝试创建一个Master-Detail iPad应用程序,其中包含主视图中已保存文件的列表,以及详细视图中的主界面。然而,细节和主人会有许多不同的观点,我希望能够使用标签栏,以便用户可以在应用程序的不同方面之间快速切换。我该怎么做呢。

理想情况下,我想创建主 - 详细信息模板并在此基础上构建。

enter image description here

5 个答案:

答案 0 :(得分:2)

在Master-Detail模板应用程序中:

  1. 选择故事板文件以在情节提要编辑器中打开它。
  2. 选择默认导航控制器。
  3. 从Xcode的菜单栏中选择编辑器 - >嵌入 - >标签栏控制器。
  4. 添加其他标签:

    1. 找到要在库中的选项卡中显示的视图控制器。
    2. 从库中拖动视图控制器并将其放在画布上。
    3. 控制从标签栏控制器拖动到新放置的视图控制器。
    4. 在小弹出菜单中,选择Relationship Segue部分下的'view controllers'。
    5. 注意:选项卡栏控制器底部的选项卡将按照您在Storyboard中连接它们的顺序显示。似乎无法更改最新版Xcode中选项卡的顺序,除非删除您创建的关系segues并按所需顺序重新创建它们。

答案 1 :(得分:1)

是否可以在底部创建一个标签栏,如下图所示?

它是一个相当简单的标签栏,带有6个表视图控制器(加载相同的数据)作为主控器和一个带有一个选项屏幕的细节控制器。

您的详细信息控制器将在视图控制器内部具有一个表视图,其行用于以编程方式返回到主视图并选择所需的segue以显示新的视图控制器。

由Paul Hegarty在斯坦福大学开设的Prounes U课程CP193P对于熟悉代码和方法非常有帮助。

答案 2 :(得分:0)

嗯,你可以这样做,
我能建议你什么

  • Alloc并初始化UITabbarcontroller,并根据您的喜好将其视图添加到主视图或详细视图控制器。

答案 3 :(得分:0)

是的,你可以

tabBarcontroller
|
|__SplitVC
|
|_anotherVC

在tab栏中第一个viewcontroller的位置放置splitviewcontroller

答案 4 :(得分:0)

即使您的其他选项卡也包含Master-Detail-Views,您也应该将UITabBarController作为视图层次结构中的第一个项目。然后,每个选项卡应链接到自己的UISplitViewController,它具有构成UI的实际ViewControllers的主视图和详细视图。

如果您不想在不同选项卡中以相同方式显示类似数据,则可以创建共享数据源/委托,而不是在每个ViewController中实现数据源和委托。但是,如果您已经以相同的方式显示相同的数据,则可能不是您需要的不同选项卡。也许那么最好有一个过滤器左右,就像你已经拥有的那样(分段控制)