UICollectionView flowLayout неправильно упаковывает ячейки

у меня естьUICollectionView с FLowLayout. Это будет работать, как я ожидаю, большую часть времени, но время от времени одна из ячеек не переносится должным образом. Например, ячейка, которая должна быть включена в первомколонка» третьего ряда, если на самом деле трейлинг во втором ряду и там просто пустое место, где оно должно быть (см. диаграмму ниже). Все, что вы можете видеть в этой ячейке румян, это левая сторона (остальное обрезано), и место, где она должна быть, пусто.

Это не происходит последовательно; это не всегда один и тот же ряд. Как только это произошло, я могу прокрутить вверх, а затем назад, и ячейка зафиксируется. Или, когда я нажимаю на ячейку (которая приводит меня к следующему просмотру с помощью нажатия), а затем возвращаюсь назад, я вижу ячейку в неправильном положении, а затем она переходит в правильное положение.

Скорость прокрутки, кажется, облегчает воспроизведение проблемы. Когда я медленно прокручиваю, я все еще время от времени вижу клетку в неправильном положении, но затем она сразу же переходит в правильное положение.

Проблема началась, когда я добавил разделы вставки. Раньше у меня были клетки почти заподлицо с границами сбора (маленькими или отсутствующими вставками), и я не заметил проблемы. Но это означало, что справа и слева от представления коллекции было пусто. То есть не смог прокрутить. Также полоса прокрутки была не вровень вправо.

Я могу решить эту проблему как на симуляторе, так и на iPad 3.

Я предполагаю, что проблема происходит из-за вставок левой и правой частей ... Но если значение неверно, то я ожидаю, что поведение будет последовательным. Интересно, может ли это быть ошибкой в Apple? Или, возможно, это из-за скопления насекомых или чего-то подобного.

Следовать за: Я используюэтот ответ ниже Ник уже более 2 лет без проблем (в случае, если люди задаются вопросом, есть ли дыры в этом ответе - я еще не нашел). Молодец, Ник.

Ответы на вопрос(11)

Ваш ответ на вопрос