Ios 用服务器上的数据填充UIPageViewController?
我希望实现的主要功能是,用户向左/向右滑动,下一页从侧面滑入,两个屏幕都半显示,直到滑动到下一页完成。我在页面视图控制器中看到过这一功能,但我不确定这是一个方向 我还没有从Firebase之类的服务器数据中动态创建视图控制器,而且我几乎没有使用页面视图控制器的经验,但是如果我只是在寻找左/右滚动条,这是一种方法吗 如果我有300个页面,我可能需要用户浏览,让用户先下载300张图片不是很糟糕吗Ios 用服务器上的数据填充UIPageViewController?,ios,swift,firebase-realtime-database,Ios,Swift,Firebase Realtime Database,我希望实现的主要功能是,用户向左/向右滑动,下一页从侧面滑入,两个屏幕都半显示,直到滑动到下一页完成。我在页面视图控制器中看到过这一功能,但我不确定这是一个方向 我还没有从Firebase之类的服务器数据中动态创建视图控制器,而且我几乎没有使用页面视图控制器的经验,但是如果我只是在寻找左/右滚动条,这是一种方法吗 如果我有300个页面,我可能需要用户浏览,让用户先下载300张图片不是很糟糕吗 或多或少,我只是在尝试之前寻找指导,因为我仍然不确定从哪里开始 使用可以实现的PageViewContr
或多或少,我只是在尝试之前寻找指导,因为我仍然不确定从哪里开始 使用可以实现的PageViewController。遵循以下步骤:
func pageViewController(pageViewController: UIPageViewController,
viewControllerAfterViewController ProView: UIViewController) -> UIViewController? {
let itemController = ProView as PageItemController
if itemController.itemIndex+1 < characterImages.count {
return getItemController(itemController.itemIndex+1)
}
return nil
}
func pageViewController(pageViewController: UIPageViewController,
viewControllerBeforeViewController ProView: UIViewController) -> UIViewController? {
let itemController = ProView as PageItemController
if itemController.itemIndex > 0 {
return getItemController(itemController.itemIndex-1)
}
return nil
}
private func getItemController(itemIndex: Int) -> PageItemController? {
if itemIndex < characterImages.count {
let pageItemController = self.storyboard!.instantiateViewControllerWithIdentifier("ItemController") as PageItemController
pageItemController.itemIndex = itemIndex
pageItemController.imageName = characterImages[itemIndex]
return pageItemController
}
func pageViewController(pageViewController:UIPageViewController,
viewControllerAfterViewController ProView:UIViewController)->UIViewController?{
让itemController=ProView作为PageItemController
如果itemController.itemIndex+1UIViewController?{
让itemController=ProView作为PageItemController
如果itemController.itemIndex>0{
返回getItemController(itemController.itemIndex-1)
}
归零
}
私有函数getItemController(itemIndex:Int)->PageItemController?{
如果itemIndex
希望有帮助。谢谢你的帮助。我想页面视图肯定是我想要使用的,你是对的。不过,就从firebase下载图像而言……在tableview中,如果我有一个300个项目长的列表,它会使用可重复使用的单元格下载它们,而不会立即全部下载。使用这种方法,我不会这样做吗o必须下载存储在阵列中的每一张图片以用于我的characterImages阵列?我可以使用缓存,我认为300将是一种罕见的情况,但这不是数据/应用程序在发生过载时会出现一个大问题吗?我想我可以在getItem中执行下载,而不是使用数据阵列有索引的控制器是吗?我可能会有一个“Person”对象,我可以下载personArray[itemIndex]的图像.imageURL?最好在用户滚动时下载图像这可以改善用户交互如果你成功了,你能分享一个例子吗?我也在尝试让它与UIPageViewController一起工作,但我没有得到预期的结果。谢谢!:)