在collectionView中重用时,不应用UIImageView大小

时间:2016-02-11 21:40:32

标签: ios objective-c uiimageview uiimage uicollectionviewcell

在我的集合视图中,我的一个单元格中有一个UIImageView,其UIViewContentMode是UIViewContentModeScaleAspectFit。

UIImageView具有约束,可以在方向更改时调整其框架大小。

大部分时间一切都很美妙。但每隔一段时间UIImage就会在旋转时被裁剪掉。它似乎与重用(dequeueReusableCellWithReuseIdentifier)有关,因为它只在重用后才会发生。

在我的prepareForReuse中,我正在设置约束,因为它们在我的xib中。

我尝试过setNeedsDisplay。有人有什么建议吗?

1 个答案:

答案 0 :(得分:1)

我遇到了一个非常类似的问题。具有在xib中定义的单元格的collectionView。单元格包含一个包含UIImageView的视图,该视图根据方向模式设置宽度约束。事实证明,在UIImageView上设置的 contentMode 正在下面进行更改。我建议看一下contentMode并确保它设置得恰当(see reference) - 或者 ScaleAspectFit ScaleAspectFill