使用拆分视图控制器的多个细节视图

如您所知, UISplitViewController只有一个根控制器和一个详细视图控制器,但我想使用另一个详细视图控制器。

当我从根控制器(弹出控制器)中选择列表项时,选择应该触发不同的细节视图 – 即,row1触发详细视图1,row2触发详细视图2,按钮项触发详细视图3等。如何实现此目的?

Apple推出了一个涵盖您所需产品的项目。 MultipleDetailViews

此示例显示如何使用UISplitViewController管理多个详细信息视图。

该应用程序使用具有表视图控制器的拆分视图控制器作为根视图控制器。 在表视图中进行选择时,将创建一个新的视图控制器并将其设置为拆分视图控制器的第二个视图控制器。

根视图控制器定义了视图控制器必须采用的协议(SubstitutableDetailViewController)。 该协议指定隐藏和显示控制弹出框的条形按钮项的方法。

Apple的这个项目是从2012年开始的,不使用故事板。 如果您正在寻找一个非故事板解决方案,它将正常工作,但在Xcode 6中,您应该利用故事板中的新Show Detail segue。

这是一个快速示例项目 ,通过使用主视图控制器中的显示详细信息segue,显示如何在同一拆分视图上使用多个详细视图控制器。

我知道这是一个迟到的post,因为这是在6年前被问及去年活跃的。 但是有一种方法可以为拆分视图控制器提供多个细节视图。

通过将每个细节控制器嵌入到自己的导航控制器中并使用“显示细节”segue从主视图链接到每个细节控制器,您可以通过使用关联的标识符然后从主视图函数实现在视图之间切换的结果didSelectRowAt’选择一行是您可以选择要查看的详细视图的位置。

 if indexPath.row == 0 { performSegue(withIdentifier: "secondView", sender: self) } if indexPath.row == 1 { performSegue(withIdentifier: "thirdView", sender: self) } 

在此处输入图像描述