外观风格
创建视图控制器的数据源
在几个简短的步骤中,我们已经做了很多工作:PageViewController
使用 UIPageViewController
从 SwiftUI
视图中显示内容。现在启用滑动交互来从一个页面移动到另一个页面。

一个表示 UIKit
视图控制器的 SwiftUI
视图可以定义 SwiftUI 管理的 Coordinator
类型,并将其作为表示视图上下文的一部分提供。
第 1 步
在 PageViewController
中创建一个嵌套的 Coordinator
类。
SwiftUI 管理我们 UIViewControllerRepresentable
类型的 coordinator
,并在调用上面创建的方法时将其作为上下文的一部分提供。
第 2 步
给 PageViewController
添加另外一个方法来创建 coordinator
。
SwiftUI 会在调用 makeUIViewController(context:)
方法之前调用 makeCoordinator()
方法,这样配置视图控制器时,我们可以访问 coordinator
对象。
我们可以用这个 coordinator
实现常见的 Cocoa
模式,例如代理、数据源以及通过 target-action
响应用户事件。
第 3 步
在 coordinator
中使用视图的页面数组初始化一个控制器数组。
coordinator
是存储这些控制器的好地方,因为系统只初始化它们一次,而且是在你需要它们来更新视图控制器之前。
第 4 步
给 Coordinator
类型遵循 UIPageViewControllerDataSource
协议,并且实现两个必要方法。
这两个方法建立了视图控制器之间的关系,因此我们可以在它们之间来回滑动。
第 5 步
将 coordinator
作为数据源添加给 UIPageViewController
。
第 6 步
回到 PageView.swift,打开实时预览,并测试走滑动的效果。
