我有一个UICollectionView
的流程布局.它在大多数情况下都会像我预期的那样工作,但偶尔会有一个细胞包裹不好.例如,如果在第二行中实际尾随,则第三行的第一"列"中应该打开的单元格,并且该单元格所在的位置只有一个空白(见下图).你所能看到的这个胭脂细胞是左手边(其余部分被切断),它应该是空的.
这种情况并不总是发生;它并不总是同一排.一旦发生了,我可以向上滚动,然后再往回滚动,细胞就会自行修复.或者,当我按下单元格(通过一个按钮将我带到下一个视图)然后弹回来时,我会看到单元格处于错误的位置,然后它会跳到正确的位置.
滚动速度似乎更容易重现问题.当我慢慢滚动时,我仍然可以不时看到单元格处于错误的位置,但它会立即跳转到正确的位置.
当我添加了部分插入时,问题就开始了.以前,我让单元格几乎与集合边界齐平(很少或没有插入),但我没有注意到这个问题.但这意味着集合视图的左右两侧都是空的.Ie,无法滚动.此外,滚动条没有向右齐平.
我可以在模拟器和iPad 3上解决这个问题.
我猜问题的发生是因为左边和右边的插页.但是如果值是错误的,那么我会期望行为是一致的.我想知道这是不是苹果的问题?或者,这可能是由于插页的堆积或类似的原因.
Follow up:我已经使用Nick的this answer已经超过两年了,没有任何问题(如果人们想知道答案中是否有漏洞--我还没有找到任何漏洞).尼克,干得好.