swift TableView 单元格内的 CollectionView

swift CollectionView inside TableView Cell

为什么我滚动第一个单元格然后第三个单元格也滚动?

Screen Record

这是因为单元格重用,所以基本上您滚动的单元格会离开屏幕,并在需要向下滚动另一个单元格时重新使用。

在您的 UITableViewCell 子类中,您可以实现 prepareForReuse 方法,当单元格准备好被重用时调用此方法,您可以在那里将 contentOffset 设置为 0,例如:

override func prepareForReuse() {
    super.prepareForReuse()

    scrollView.contentOffset = CGPoint(x: 0, y: 0)
}