2017-05-09 52 views
0

我使用的是UICollectionView以示出阵列图像的,水平并使用放大/缩小该图像中的所述细胞与滚动视图的帮助限制。但是当我水平滚动时,它会显示当前单元格中以前的单元格内容。我无法确定问题所在。 enter image description hereUICollectionView显示下一个单元之前的小区内容而滚动水平

enter image description here

的CollectionView数据源

enter image description here

CollectionCell类 enter image description here

+2

请分享一些代码,以更好地了解...! –

+0

特别是你的'cellForItem(at:)'函数 – Paulw11

+0

在图像单元内重写“prepareForReuse”方法,并重置诸如 1)。 scrollViewForImage.zoomscale = 1 2)。 imageView.image = nil 3)。删除图像视图中添加的点按手势 应该修复问题 – vignesh

回答

0

试试这个,当你重用cellForItem的细胞在

cell.imageView.Image =零

+0

它不起作用! :( – Krimi

+0

cell.imageView.Image = nil cell.steupdata() –

+0

是啊!我做了完全一样的,但它没有解决我的问题 – Krimi

0

请分享一些代码,以便我们可以帮助你更好。同时,请确保您有以下几个部分代码中的正常工作:

  • 注册正确UICollectionViewCell子以正确的重用标识符
  • 使用方法[self.collectionView dequeueReusableCellWithReuseIdentifier:itemIdentifier forIndexPath:indexPath]和正确传递两个参数。
  • 在UICollectionViewCell子类中,覆盖prepareForReuse并在其中重置UI参数。

    覆盖imageCell类中的prepareForReuse,并将imageView.image设置为nil。

+0

我已经编辑了一些代码我的问题请看看它 – Krimi

+0

图像视图在每个滚动中显示正确的图像,但内容大小滚动错误! – Krimi

+0

也许您需要'invalidateIntrinsicContentSize',重新计算大小,并调用'setNeedsLayout'。 –

0

滚动视图的contentSize应该是大如imageView.image.size,或者只是使用MWPhotoBrowser

相关问题