如何使UIPageViewController具有未知的页码?

时间:2019-02-17 05:40:24

标签: ios swift uipageviewcontroller uipagecontrol

我需要在UIPageViewController上显示一些媒体内容,并允许用户在媒体之间滑动(就像画廊一样),我不知道前面有多少个视频或图像,因为我必须从服务器一个个地获取它们。如何将UIPageViewController与未知的页码一起使用,而只知道上一页和下一页的视图控制器?

2 个答案:

答案 0 :(得分:0)

您可以尝试像页面视图控制器一样使用“收藏夹”视图。您可以尝试使集合视图单元格适合页面浏览器之类的屏幕,并在需要时根据需要更新数据源和集合视图。

您可以在HomeViewController中看到示例here

答案 1 :(得分:0)

对于UIPageViewController,您不需要提供项目总数以使其正常运行。设置UIPageViewController时,只需通过以下代码设置要在第一次加载时显示的View Controller:

pageViewController.setViewControllers([viewControllerToBeDisplayed], direction: .forward, animated: false, completion: nil)

然后要使用户能够来回移动,您只需实现以下UIPageViewControllerDataSource方法:

public func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController?
public func pageViewController(_ pageViewController: UIPageViewController, viewControllerAfter viewController: UIViewController) -> UIViewController?

希望有帮助。