ios UIPageViewController在跳转到页面时滑动延迟

时间:2015-10-19 09:09:42

标签: ios swift uipageviewcontroller

我有一个带有多个页面的UIPageViewController,当浏览它们时,一切都运行良好。 PageViewController自动预加载当前页面的相邻页面以确保平滑滚动(我有UIPageViewControllerTransitionStyle.Scroll

此外,我还可以通过输入数字跳转到特定页面。问题是,当我以编程方式跳转到某个页面时,PageViewController似乎也没有预先加载相邻的页面,所以当我开始从我跳到的页面开始滑动时,有一个半秒的延迟, PageViewController加载下一个ViewController,以便显示它。

我用这个答案跳转到页面:https://stackoverflow.com/a/18602186/5461994

并将其转移到Swift:

weak var pvcw = pvc
pvc.setViewControllers([page], direction: UIPageViewControllerNavigationDirection.Forward, animated: true) { finished in
   if let pvcs = pvcw {
        dispatch_async(dispatch_get_main_queue(), {
            pvcs.setViewControllers([page], direction: UIPageViewControllerNavigationDirection.Forward, animated: false, completion: nil)
        })
    }
}

我的问题是:如何让UIPageViewController预先加载我刚刚跳转到的页面的相邻页面,就像在刷卡过程中自动执行一样?

P.S。:我在推出应用时遇到了同样的问题。当我初始化我的PageViewController并设置第一个可见页面时:

pvc.setViewControllers([firstPage], direction: UIPageViewControllerNavigationDirection.Forward, animated: false, completion: nil)

第一次滑到第二页时,我也有这种延迟。 任何帮助表示赞赏!

0 个答案:

没有答案