对不同的页面视图使用相同的 ViewController Swift

Posted

技术标签:

【中文标题】对不同的页面视图使用相同的 ViewController Swift【英文标题】:Using same ViewController for different Page Views Swift 【发布时间】:2015-07-27 15:24:09 【问题描述】:

我是页面浏览量的新手,请耐心等待。

到目前为止,我看到的所有教程都向您展示了如何为 PageViewController 中的不同页面设置不同的唯一 ViewController。

我正在设置一个为期 3 天的新闻提要,因此我决定在每个页面之间滑动会导致用户在这几天之间切换。

所以每个页面在UI方面完全相同,但在数据方面不同

所以我应该能够将每个 Page 指向同一个 viewController 但指向不同的数据源。

我的数据源将是一个二维数组。是的,你猜对了,二维来分隔日子!每个 Column 代表一天,相应的 Row 将是其各自页面中的表格视图。

有没有简单的方法可以让所有Pages都可以访问这个数据源(数组),(在PageViewController中初始化),让每个Page指向同一个ViewController,并相应地编辑它们各自的表视图。

感谢您的帮助!

【问题讨论】:

【参考方案1】:

有没有简单的方法……让每个Page指向同一个ViewController

不,不是同一个视图控制器实例。但它们当然可以是同一个 View Controller 类的不同实例。事实上,这很正常。只需在每次创建视图控制器时正确配置视图控制器,以便显示它的“页面”。

您真正需要的只是更清洁的配置(或您认为更清洁的配置)。然后编写更简洁的配置,无论这对您意味着什么!世界上没有任何理由,例如,为什么不应该以某种方式告诉您的视图控制器实例,在实例化时,它正在描绘什么页面,并基于此进行相应的配置。

【讨论】:

以上是关于对不同的页面视图使用相同的 ViewController Swift的主要内容,如果未能解决你的问题,请参考以下文章

django上的几个页面(在不同的应用程序中)相同的块

iOS PageViewController 使用故事板具有不同的页面布局

如何在 WPF / MVVM 中对绑定到相同实例的两个列表视图进行不同选择

IOS7 tableview底部viewcontrol中的多余空间

如何在两个不同的视图模型中使用相同的模型数据?

模型视图演示者 - 相同的视图,不同的演示者