我有一个带有 FlowLayout 的 UICollectionView
。它将工作,因为我期望的大多数时间,但不时有一个细胞不包装正确。例如,在第三行的第一个“列”中应该打开的单元格,如果它实际上在第二行的尾部,并且在它应该在的地方只有一个空白(见下图)。所有你可以看到的这个胭脂细胞是左手边(其余的被切断)和地方,它应该是空的。
这种情况并不总是发生; 它并不总是相同的行。一旦它发生了,我可以向上滚动,然后回来,细胞将自我修复。或者,当我按下单元格(通过推动将我带到下一个视图)然后弹回,我将看到单元格在不正确的位置,然后它将跳到正确的位置。
滚动速度似乎更容易重现这个问题。当我慢慢滚动时,我仍然可以看到细胞在错误的位置时不时地,但然后它会跳到正确的位置立即。
这个问题是从我添加节插入时开始的。以前,我让单元格几乎对集合边界(很少或没有插入)进行刷新,但是没有注意到这个问题。但这意味着 Collection 视图的左右两边是空的。我,不能滚动。此外,滚动条没有向右刷新。
我可以让这个问题同时发生在 Simulator 和 iPad3上。
我猜测问题的发生是因为左侧和右侧部分的插入... 但是如果值是错误的,那么我希望行为是一致的。我想知道这是不是苹果的一个 bug?或者,这可能是由于嵌入或类似的东西的建立。
跟进 : 我已经使用 Nick 下面的 这个答案超过2年了,没有出现任何问题(以防人们想知道这个答案是否有任何漏洞——我还没有发现任何漏洞)。干得好,尼克。