2016-11-08 35 views
0

我有一個表視圖,並在表視圖的自定義單元格中有一個集合視圖。 集合視圖具有水平滾動多個圖像。 在表視圖的第一個單元格上,我從集合視圖中滾動了3到4個圖像,這意味着我在第1行的表視圖和第4個集合視圖的圖像上進行水平滾動。 現在,當我去或向下滾動表視圖到第5行時,集合視圖直接帶我去我在之前滾動的集合視圖中的索引圖像。每次滾動表格視圖時,我都應該處於集合視圖的第一個索引處。如何總是顯示集合視圖的第一項,如果集合視圖嵌入在ios的表視圖中

+0

在tableViewCell,控制裝置:'prepareForReuse()'和重新加載' collectionView'或將其滾動到位置0。 – shallowThought

回答

0

使用prepareForReuse()方法自定義TableView單元格和重置UICollectionView滾動。

注意:這種方法將工作,但滾動插入總是重置。因此,在你的例子中,如果你向下滾動然後返回到第一個單元格,那麼它將不會顯示第4個圖像,但會顯示第一個圖像。如果要實現更好的解決方案,請創建一個雙精度數組以記住內部UICollectionViews單元格的contentInsets,然後在prepareForReuse方法中使用這些值以在UICollectionView上設置右滾動。這種方法對於內存使用可能會很昂貴。

1

在表視圖的willDisplayCell方法中使用它。

設點= CGPoint(X:0,Y:0)

tableViewCell.collectionView.setContentOffset(點,動畫:真)

相關問題