2011-11-04 78 views
0

我正在iPad上开发一个应用程序。UiScrollView IOS

在此, 我使用了两个UIScrollView控制器。

当用户滚动第一个滚动视图时,第二个滚动视图也必须以编程方式滚动。

同样当用户滚动第二个滚动视图第一个滚动视图需要滚动。 如何在同一视图中处理这两个滚动视图。我试过了 - (void)scrollViewDidScroll:(UIScrollView *)scrollView;(void)scrollViewDidScroll:(UIScrollView *)scrollView; UIScrollViewDelegate的方法。 但滚动不平滑。

请给我建议任何其他方式来做到这一点。

我的代码是:

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

     if(scrollView == sub) 

     { 

     if(sub.isDragging) 
     { 

      NSLog(@"Sub"); 
      float x = main.contentSize.width/sub.contentSize.width; 
      CGPoint offset = CGPointMake((sub.contentOffset.x*x), sub.contentOffset.y); 
      [main setContentOffset:offset animated:NO]; 

     } 

     } 

     else if(scrollView == main) 

     { 

     if(main.isDragging) 

     { 

      float x = main.contentSize.width/sub.contentSize.width; 
      CGPoint offset = CGPointMake((main.contentOffset.x/x), main.contentOffset.y); 
      [sub setContentOffset:offset animated:NO]; 
     } 
    } 

    } 

回答

1

尝试使用

- (void)scrollRectToVisible:(CGRect)rect animated:(BOOL)animated 

,而不是setContentOffset。并将动画设置为YES,它会更流畅!