iOS:如何同步两个UIScrollview

iOS:如何同步两个UIScrollview,第1张

概述我有两个横向UIScrollviews.我想在用户拖动其中任何一个时同步他们的滚动.这是我的代码: self.topScrollView = [[UIScrollView alloc] initWithFrame:CGRectZero];self.topScrollView.delegate = self;self.topScrollView.bounces = YES;self.bott 我有两个横向UIScrollvIEws.我想在用户拖动其中任何一个时同步他们的滚动.这是我的代码:

self.topScrollVIEw = [[UIScrollVIEw alloc] initWithFrame:CGRectZero];self.topScrollVIEw.delegate = self;self.topScrollVIEw.bounces = YES;self.bottomScrollVIEw = [[UIScrollVIEw alloc] initWithFrame:CGRectZero];self.bottomScrollVIEw.delegate = self;self.bottomScrollVIEw.bounces = YES;...- (voID)scrollVIEwWillBeginDragging:(UIScrollVIEw *)scrollVIEw{    if (scrollVIEw == self.topScrollVIEw)    {        self.bottomScrollVIEw.delegate = nil;    }    else    {        self.topScrollVIEw.delegate = nil;    }    ...}- (voID)scrollVIEwDIDEndDragging:(UIScrollVIEw *)scrollVIEw willDecelerate:(BOol)decelerate{       ...    self.topScrollVIEw.delegate = self;    self.bottomScrollVIEw.delegate = self;}- (voID)scrollVIEwDIDEndDecelerating:(UIScrollVIEw *)scrollVIEw{    ...    self.topScrollVIEw.delegate = self;    self.bottomScrollVIEw.delegate = self;}- (voID)scrollVIEwDIDScroll:(UIScrollVIEw *)scrollVIEw{    // Sync the two scroll vIEws    if (scrollVIEw == self.topScrollVIEw)    {        [self.bottomScrollVIEw setContentOffset:scrollVIEw.contentOffset animated:NO];    }    else    {        [self.topScrollVIEw setContentOffset:scrollVIEw.contentOffset animated:NO];    }    ...}

两个滚动视图同步滚动,但问题是所有的d跳和减速都消失了.整个滚动运动变得非常僵硬.如果我删除所有同步代码,那么每个滚动视图都可以单独使用.
那么,问题是什么?或者UIScrollVIEw不能同步?

解决方法 您可以使用topScrollVIEw.panGestureRecognizer和bottomScrollVIEw.panGestureRecognizer来获取两个手势识别器,并将它们添加到包含两个滚动视图的公共超级视图中.然后,两个孩子都会认出这个超级视图的平移手势.

您很可能还需要成为两个识别器的代表,并让它们同时被识别:

- (BOol)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {    return YES;}
总结

以上是内存溢出为你收集整理的iOS:如何同步两个UIScrollview全部内容,希望文章能够帮你解决iOS:如何同步两个UIScrollview所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1061501.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-25
下一篇2022-05-25

发表评论

登录后才能评论

评论列表(0条)

    保存