【问题标题】:Reload UiPageViewController in seconds在几秒钟内重新加载 UiPageViewController
【发布时间】:2018-11-01 07:09:52
【问题描述】:

我在我的 iOS 应用程序中使用 UIPageViewController。我在页面初始加载时从我的 web api 获取数据。之后,我想每 10 秒用 UIPageViewController 的新信息更新值。我试着像那样更新它,但它仍然没有更新。

pageViewController(pageViewController: UIPageViewController, didFinishAnimating finished: Bool, previousViewControllers: [UIViewController], transitionCompleted completed: Bool)

请帮忙。

【问题讨论】:

  • 这只是一个delegate 方法,分享你目前尝试过的代码。
  • 好的。基本上我只想重新加载 UIPageViewController 因为每隔几秒钟数据源就会更新一次,我想用新数据更新它。我们可以在这里使用任何东西,比如在表格视图中我们使用 tableview.reloadData() 重新加载数据

标签: ios swift swift4 uipageviewcontroller


【解决方案1】:

您可以通过将 dataSource 设置为 nil 然后再次添加到 self 来强制重新加载数据。在这种情况下,它将再次从头开始调用所有数据源方法。

func pageViewController(_ pageViewController: UIPageViewController, didFinishAnimating finished: Bool, previousViewControllers: [UIViewController], transitionCompleted completed: Bool) {
        if !completed { return }
        DispatchQueue.main.async {
            pageViewController.dataSource = nil
            pageViewController.dataSource = self
        }
}

希望它能解决你的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-08
    • 1970-01-01
    • 2012-07-13
    • 2015-10-28
    • 2019-12-13
    • 1970-01-01
    • 1970-01-01
    • 2023-01-17
    相关资源
    最近更新 更多