0

我有 2UIScrollview秒相邻。它们在垂直值上连接在一起。(上和下)

事实证明,我在两个视图中绘制了某种图形(实际上是在每个视图中......但图形(一条线)在视觉上穿过)。在某些时候,当您疯狂地平移并开始加速和减速时,滚动视图不会保持水平。停止此操作时,它们会再次升级(在某种动画中),但我实际上希望它们粘在一起,无论用户做什么。

我玩了很多,但我的想法已经不多了,所以任何帮助将不胜感激。

谢谢

汤姆

4

2 回答 2

0

所以如果你慢慢平移它会起作用吗?我认为这取决于您如何将 uiscrollviews 连接在一起...我的意思是您将垂直值从一个传递到另一个,但不是加速度,不是吗?请发布一些代码

于 2010-11-22T23:36:30.833 回答
0

是的,它工作缓慢。如果我非常快速地平移它甚至可以很好地工作,但是如果我做了很多停止和加速之类的事情,它就会中断。

基本上我在我的视图控制器中创建了我的 uiscrollview 并将它们连接到 IB 中。我正在使用 scrollviewdidScroll-delegate-method 使它们保持同步。我也用 KVO 试过,但没有区别。有趣的是,我在内容滚动视图之上也有一个滚动视图。无论我在做什么,我从来没有设法让它们(contentscroll 和 columnscroll)不同步。

  • (void)scrollViewDidScroll:(UIScrollView *)scrollView { if (scrollView.dragging || scrollView.tracking) {

    if (rowScrollView == scrollView) 
    {
        [contentScrollView setContentOffset:CGPointMake(contentScrollView.contentOffset.x, scrollView.contentOffset.y) animated:NO];
    } 
    else if (columnScrollView == scrollView) 
    {
        [contentScrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, contentScrollView.contentOffset.y) animated:NO];
    }
    else if (contentScrollView == scrollView)
    {
        [columnScrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, 0) animated:NO];
        [rowScrollView setContentOffset:CGPointMake(0, scrollView.contentOffset.y) animated:NO];
    }
    

    }

谢谢你

汤姆

于 2010-11-23T08:38:28.537 回答