gpt4 book ai didi

objective-c - PageViewController 当前索引不正确

转载 作者:行者123 更新时间:2023-11-30 14:19:09 26 4
gpt4 key购买 nike

我试图在用户滑动到最后一个 View Controller (4/4)后显示一个按钮。但是索引错误地输出了错误的数字(即使显示了正确的 View Controller )。

func viewControllerAtIndex(index : Int) -> UIViewController? {
if((self.pageTitles.count == 0) || (index >= self.pageTitles.count)) {
return nil
}
let pageContentViewController = self.storyboard?.instantiateViewControllerWithIdentifier("PageContentViewController") as! PageContentViewController

pageContentViewController.imageName = self.images[index]
pageContentViewController.titleText = self.pageTitles[index]
pageContentViewController.pageIndex = index


println(pageContentViewController.imageName)
if index == 3 { // show start button once user reaches the last screen (index = 3)
startBtn.hidden = false
} else {
startBtn.hidden = true
}

return pageContentViewController
}

所有 View 都正确显示,除了索引从 1、2、4、2 随机跳转。如果我来回滑动,情况会变得更糟。

为什么索引没有显示正确的索引(与显示的 View Controller 一致)?

entire code

最佳答案

如果您对 viewControllerAtIndex 的使用类似于 Xcode 为“基于页面的应用程序”提供的项目模板,则最终会从 UIPageViewControllerDataSource 的方法之一调用该模板>,即 pageViewController:viewControllerAfterViewControllerpageViewController:viewControllerBeforeViewController。页面 View Controller 调用这些方法的时间和提供的索引完全取决于其内部实现,可能与您导航和查看页面的顺序无关。我认为它针对内存消耗和性能进行了高度优化,因此它要求 View Controller 能够满足这些目标。

关于objective-c - PageViewController 当前索引不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30698762/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com