gpt4 book ai didi

iphone - 向后或向前滑动时检查 UIPageViewController

转载 作者:可可西里 更新时间:2023-11-01 03:42:01 24 4
gpt4 key购买 nike

我想使用 UIPageViewController 跟踪索引。每当我滑动时,我都需要 index++index--。每当您向后或进一步滑动时,都会调用此委托(delegate)方法:

- (void)pageViewController:(UIPageViewController *)pvc didFinishAnimating:(BOOL)finished previousViewControllers:(NSArray *)previousViewControllers transitionCompleted:(BOOL)completed
{
// If the page did not turn
if (!completed)
{
// You do nothing because whatever page you thought
// the book was on before the gesture started is still the correct page
return;
}

// I want to check here whenever the page was swiped back or further
}

如果用户向后或进一步滑动,我如何检查此方法?我知道有两种数据源方法“viewControllerAfterViewController”和“viewControllerBeforeViewController”但是我无法检查页面转换是否已经完成(我可以在上面的方法中做到这一点)不知道我怎么知道用户是否向后滑动或进一步滑动上面的方法?

最佳答案

使用协议(protocol):

MyClass : UIViewController <UIPageViewControllerDataSource,UIPageViewControllerDelegate

声明一个属性:

@property(nonatomic) NSInteger currentIndex;
@property(nonatomic) NSInteger nextIndex;

在方法中:

-(void)pageViewController:(UIPageViewController *)pageViewController willTransitionToViewControllers:(NSArray *)pendingViewControllers{
NewsTableViewController *controller = [pendingViewControllers firstObject];
self.nextIndex = [self.arrViews indexOfObject:controller];
}

-(void)pageViewController:(UIPageViewController *)pageViewController didFinishAnimating:(BOOL)finished previousViewControllers:(NSArray *)previousViewControllers transitionCompleted:(BOOL)completed{
if (completed) {
self.currentIndex = self.nextIndex;
}
self.nextIndex = 0;
}

您将看到当前页面。感谢 Corey Floyd 在 enter link description here

关于iphone - 向后或向前滑动时检查 UIPageViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16201799/

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