【发布时间】:2021-12-22 10:53:11
【问题描述】:
有一个控制器,我们称之为 Bob,作为一个模态,它包含一些标签和一个加载 2 个表格控制器的 UIPageViewController。页面控制器第一次加载时,它会加载所有正确数据的表控制器。每当 Bob 再次打开时,表控制器的数据都不会改变。 Bob 的标签确实发生了变化,因此它从其父级接收到不同的请求。
pageController 是 UIPageViewController 的名称
我已尝试在 pageController 的数据源部分执行以下操作
pageController.dataSource = nil
pageController.dataSource = self
但它没有用。我也尝试在加载新数据后再次设置控制器,但也没有用
pageController.setViewControllers([viewController(At: 0)!], direction: .forward, animated: true, completion: nil)
在表控制器中,它们被设置为像这样刷新数据,并且在将新数据传递给它们之后调用它。我已经验证了每当 Bob 打开时都会调用它。
DispatchQueue.main.async(execute: { () -> Void in
self.tableView.reloadData()
})
我也尝试过完全重新创建 UIPageViewController,但也没有用。
对于如何让页面控制器使用新数据重新加载表控制器,我真的很困惑。我不认为问题出在桌面控制器上,但我愿意尝试任何事情。有人有什么想法吗?
【问题讨论】:
标签: swift uipageviewcontroller