在滚动时跟踪UIPageController中的frame.origin.x.

时间:2014-08-02 15:00:04

标签: cocoa-touch uiscrollview uikit uipageviewcontroller

我在这里使用标准UIPageViewController,我需要跟踪x坐标,以便相应地更改图像的alpha。我尝试在UIScrollView中找到这样的UIPageViewController并且有效:

for (UIView *view in self.pageViewController.view.subviews) {
    if ([view isKindOfClass:[UIScrollView class]]) {
        [(UIScrollView *)view setDelegate:self];
    }
}

但是当我这样做时:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
    MTWPageContentViewController *pageContentVC = [self viewControllerAtIndex:_mainPageControl.currentPage];
    NSLog(@"%f", pageContentVC.view.frame.origin.x);
}

NSLog给了我0.000,这显然意味着我做错了什么。

pageContentVC存在,在我滚动的那一刻,视图控制器可见。 那么,请告诉我如何在滚动时跟踪UIPageViewController的子视图的x坐标?

1 个答案:

答案 0 :(得分:0)

您可以从UIPageViewController抓取手势识别器,并将自己添加为目标/操作以获取有关平底锅的信息。

for (UIGestureRecognizer *gestureRecognizer in self.pageViewController.gestureRecognizers) {
  if ([gestureRecognizer isKindOfClass:UIPanGestureRecognizer.class]) {
    [gestureRecognizer addTarget:self action:@selector(panned:)];
  }
}