当UICollectionViewFlowLayout
上的布局无效时,它会为每个单元格创建一堆新的布局属性;但它不会告诉您的单元格重绘,这会导致任何图层图形失真。
我不想告诉我的集合重新加载它的数据,因为这会删除流属性之间的任何漂亮过渡:例如,我将网格布局转换为封面流。
我需要一种方法让UICollectionViewController
类告诉单元格在给出布局属性后调用它们的[setNeedsDisplay]
方法。
答案 0 :(得分:4)
当你的细胞改变大小时,它取决于它们如何处理(拉伸与重绘)。这由UIView contentMode
属性控制;尝试将其设置为UIViewContentModeRedraw
,以便调整大小以使您的观看内容无效,例如setNeedsDisplay:
。
如果您直接将CALayers用作细胞的子图层,则可以将needsDisplayOnBoundsChange
设置为YES
以获得相同的效果。