【问题标题】:Can I somehow get the scrollViewDidScroll: UIScrollView Delegate method from UIPageViewController?我能以某种方式从 UIPageViewController 获取 scrollViewDidScroll: UIScrollView Delegate 方法吗?
【发布时间】:2014-03-26 22:59:33
【问题描述】:

我有一个 UIViewController's 数组,我希望能够在它们之间上下滚动。我从 UICollectionView 开始,但这并没有提供我想要的旋转。我尝试使用 UIPageViewController,但它不使用视图重用,我无法使用 x 或 y 偏移量调整过渡。

我有一个视图重用的解决方法,但我还需要从UIPageViewController 使用的UIScrollView 获取“scrollViewDidScroll:”调用。我在 UIPageViewController 委托中没有发现任何有用的东西。

有人知道获取UIPageViewController 的当前滚动位置或偏移量的解决方法吗?

【问题讨论】:

  • 根据我的实验(在放弃使用UIPageViewController 的项目之前),UIPageViewController 使用的滚动视图是私有的。我自己做的是自己构建自己的UIScrollView 控制器。

标签: ios objective-c uiscrollview uipageviewcontroller


【解决方案1】:

我通过...获取了对它的引用

1) 下面的sn -p

for (UIView *view in savedStashesPageViewController.view.subviews) {
    if ([view isKindOfClass:[UIScrollView class]]) {
        self.pageScrollView = (UIScrollView *)view;
        self.pageScrollView.delegate = self;
    }

2) 适当设置 UIScrollViewDelegate

3) 下面的sn-p

-(void)scrollViewDidScroll:(UIScrollView *)scrollView {

NSLog(@"%f",scrollView.contentOffset.x);

}

【讨论】:

    猜你喜欢
    • 2021-05-22
    • 1970-01-01
    • 2023-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    相关资源
    最近更新 更多