在tableview行中同步水平滚动集合视图

时间:2014-09-22 21:27:26

标签: ios uitableview uiscrollview uicollectionview

我正在尝试在表格视图中同步所有集合视图中的滚动(请参阅下面的图片链接):

示例图片: http://postimg.org/image/dduhr89e5/

我能够找到的示例解释了如何通过识别每个滚动视图来同步两个单独的滚动视图。但是,我不确定如何在表视图中识别每个集合视图。可能有1个或数百个都需要同步。

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
  if ([scrollView isEqual: theFirstScrollView])
  {
        theSecondScrollView.contentOffset =
              CGPointMake(theFirstScrollView.contentOffset.x, 0);
  }
  else
  {
        theFirstScrollView.contentOffset = 
              CGPointMake(theSecondScrollView.contentOffset.x, 0);
  }
}

1 个答案:

答案 0 :(得分:2)

假设每个集合视图都有自己的单元格,并且集合视图的宽度相似(或者至少你已经找到了那个部分),这就是我要使用的方法:

1)让你的VC成为所有集合视图的委托。

2)当其中任何一个滚动时,浏览TableViews visibleCells并设置单元格collectionView的内容偏移量。另外,将内容偏移量存储在viewController中。

3)每当新单元格出列时,将内容偏移量设置为VC中最后存储的值。