一个故事板,两个控制器

问题描述:

假设我们在应用中有两个看起来完全相同的视图。 但是,这两个视图都有不同的逻辑(数据源等),我们想分开。 两个不同的控制器可以使用相同的故事板吗? 如果不是,上述问题的最佳解决方案是什么?一个故事板,两个控制器

+1

我没有看到问题,只要他们的课程不同,为什么不呢 –

由于插座和动作连接,故事板可能会有点复杂。但是,您可以将视图放入XIB/NIB文件,并使用适当的初始化程序从不同的控制器加载它。

StoryboardInterface Builder哪个建筑界面。如果你有相同的视图,那么他们可以使用相同的视图控制器。然后给不同的实例一个不同的数据源。

例如:您的故事板中有一个名为MyViewController的类,其中storyboardid = storyboardid有一个标签。你以同样的方式发出两个控制器:

let vc1 = storyboard?.instantiateViewController(withIdentifier: "storyboardid") 
let vc2 = storyboard?.instantiateViewController(withIdentifier: "storyboardid") 

VC1和VC2长得一模一样,但是你可以使用不同的data source这样的:

vc1.title = "title of vc1" 
vc2.title = "title of vc2" 

所以你定义视图一次have different logic (data source etc) that we would like to separate