滚动所有 uitableviewcell 内的所有 UICollectionView

Posted

技术标签:

【中文标题】滚动所有 uitableviewcell 内的所有 UICollectionView【英文标题】:scroll all CollectionViewCell inside all tableviewcell 【发布时间】:2019-12-22 13:08:31 【问题描述】:

我正在创建一个自定义 Tableviewcell,其中包含 CollectionView。在 tableview 单元格中滚动 CollectionView 时,我希望其他 CollectionViews 中的单元格自动滚动。

我该如何实现呢? the "parameters" and "unit" are UILabels inside Tableview cell, the "labels" are the uiLabels of "Collectioniew" inside UITableviewCell

【问题讨论】:

请分享您的代码以获得更好的解释。 使用scrollViewDidScroll检测滚动 【参考方案1】:

UICollectionViewUITableView 都是 UIScrollView 的子类,因此您可以执行以下操作之一来操作滚动:

在它们上设置contentOffset,或者, 使用func scrollToItem(at: IndexPath, at: UICollectionView.ScrollPosition, animated: Bool)

您所做的工作取决于您希望 UI 的工作方式。

假设每个 tableview 单元格包含一个集合,基本技术将是:

    当用户滚动内部集合时,您可以使用UIScrollViewDelegate 委托方法func scrollViewDidScroll(UIScrollView) 检测到这一点。 are otherUIScrollViewDelegate 方法在这里也有帮助。

    将检测到的内容偏移/位置更改应用于(可见)表格视图单元格中的所有其他集合。

【讨论】:

谢谢,你能举例说明一下吗?

以上是关于滚动所有 uitableviewcell 内的所有 UICollectionView的主要内容,如果未能解决你的问题,请参考以下文章

UITableViewCell 内的 UICollectionView 滚动行为

UITableViewCell 内的 UIScrollView - 水平滚动

UITableViewCell 内的 UICollectionView 滚动缓慢

忽略UITableViewCell内的垂直滚动

除非滚动表格,否则 UITableViewCell 内的 UIView 调整大小不显示

滚动后 UITableViewCell 内的 UIView 中的渐变发生了变化