我正在使用
- (void)pageViewController:(UIPageViewController *)pageViewController willTransitionToViewControllers:(NSArray *)pendingViewControllers
跟踪UIPageViewController
中的当前可见页面。这个方法可以从iOS 6获得,但我需要在iOS 5中实现这一点,我怎么能这样做?
我试过
- (void)pageViewController:(UIPageViewController *)pageViewController didFinishAnimating:(BOOL)finished previousViewControllers:(NSArray *)previousViewControllers transitionCompleted:(BOOL)completed
但是previousViewControllers
计数总是一个,所以它没有帮助,或者可能是我遗漏了某些东西
答案 0 :(得分:1)
当UIPageViewController
的脊椎位置位于UIViewController
时,UIPageViewControllerSpineLocationMid
可以显示两个previousViewControllers
个实例,否则会显示一个MyContentViewController *myVC = (MyContentViewController*)[previousViewControllers objectAtIndex:0];
个实例。
要获取对当前不在视图中的视图控制器的引用,可以通过其委托中的viewControllers
参数获取它。它将包含以前在屏幕上显示的视图控制器的引用。
例如。如果您有在页面视图控制器的数据源方法中传递的MyContentViewController类,则可以获得对委托中屏幕外的视图控制器的引用:
UIPageViewController
要获取对当前视图控制器的引用,请使用MyContentViewController *myVC = (MyContentViewController*)[[self.pageViewController viewControllers] objectAtIndex:0];
的{{1}}属性。
{{1}}