我想要检测当前页面,以便在最后一页显示时修改按钮的标题,并在用户每次从最后一页滑回第二页时重新修改。检测UIPageViewController的当前页面
现在,这些是我的委托方法和我的ViewControllers的数组:
lazy var VCArr: [UIViewController] = {
let firstVC = self.storyboard!.instantiateViewController(withIdentifier: "FirstTutorialPage")
let secondVC = self.storyboard!.instantiateViewController(withIdentifier: "SecondTutorialPage")
let thirdVC = self.storyboard!.instantiateViewController(withIdentifier: "ThirdTutorialPage")
let fourthVC = self.storyboard!.instantiateViewController(withIdentifier: "FourthTutorialPage")
return [firstVC, secondVC, thirdVC, fourthVC]
}()
委托方法
func pageViewController(_ pageViewController: UIPageViewController, viewControllerBefore viewController: UIViewController) -> UIViewController? {
guard let viewControllerIndex = self.VCArr.index(of: viewController) else {
return nil
}
let previousIndex = viewControllerIndex - 1
guard previousIndex >= 0 else {
return nil
}
guard self.VCArr.count > previousIndex else {
return nil
}
return self.VCArr[previousIndex]
}
func pageViewController(_ pageViewController: UIPageViewController, viewControllerAfter viewController: UIViewController) -> UIViewController? {
guard let viewControllerIndex = self.VCArr.index(of: viewController) else {
return nil
}
let nextIndex = viewControllerIndex + 1
guard nextIndex < self.VCArr.count else {
return nil
}
guard self.VCArr.count > nextIndex else {
return nil
}
return self.VCArr[nextIndex]
}
有人可以帮助我准确检测出的最后一页?我尝试了一些方法,但是他们中的每个人都给我指出了错误的索引这些方法在显示倒数第二页的同时检测到最后一个索引。
感谢所有。
什么时候你想确定显示哪个页面? – DonMag