我有一个水平可滚动的collectionView,其中有两个单元格占据屏幕。在这些单元格内部是一个垂直滚动的嵌入式集合视图。有没有办法让我在第一个单元格内滚动垂直CV,同时使用其ContentOffset滚动第二个单元格中的垂直CV?
以下是我试图完成它的方法:
let scrollView = notification.userInfo!["scrollView"] as! UICollectionView
if scrollView.contentOffset.y <= 250.0 {
childViewControllerForPosts.collectionViewForGroups?.collectionView.setContentOffset(CGPointMake(0, scrollView.contentOffset.y), animated: false)
self.topVerticalConstraint?.constant = -scrollView.contentOffset.y
}
else {
if self.topVerticalConstraint?.constant > -250 {
// Make sure it stays at -250
self.topVerticalConstraint?.constant = -250
}
}
FeedCell
将是包含垂直滚动集合视图的主集合视图(水平滚动)。当我在第一个中滚动一个时,我试图访问第二个来更改垂直contentOffset。
以下是我尝试保存应包含第二个主集合视图的变量的方式:
collectionViewForGroups = collectionView(collectionView!, cellForItemAtIndexPath: NSIndexPath(forItem: 1, inSection: 0)) as? FeedCell
编辑: 请注意,当我水平滚动时,垂直滚动视图没有改变。但我希望它能改变我刚刚在gif中滚动的那个。如果我要滚动第二个垂直集合视图,上面的UIView将重新出现,因为topLayConstraint因垂直contentOffset更改而发生更改。