Каков наилучший лучший способ отключить перекрестные замирания на поворотах UICollectionView / UICollectionViewLayout или ограничениях изменений?

У меня есть подклассUICollectionViewLayout который помещает клетки в круг. макет возвращаетсяYES для вызоваshouldInvalidateLayoutForBoundsChange:, На вращение, ячейка в исходном положении исчезает, а ячейка в конечном позиция исчезает.

Добавив следующий код в мой макет, я могу отключить замирания и круг предметов, кажется, просто вращается с изменением ориентации:

- (UICollectionViewLayoutAttributes *)initialLayoutAttributesForAppearingItemAtIndexPath:(NSIndexPath *)itemIndexPath {
    return nil;
}

- (UICollectionViewLayoutAttributes *)finalLayoutAttributesForDisappearingItemAtIndexPath:(NSIndexPath *)itemIndexPath {
    return [self layoutAttributesForItemAtIndexPath:itemIndexPath];
}

Почему методы вызываются при изменении границ, потому что документация не Похоже, они предлагают? Документация, кажется, заявляет, что их называют связанным для вставки и удаления элементов из коллекции коллекции.

Есть ли лучший способ отключить перекрестное затухание во время вращения?

Заметки:

The initialLayoutAttributesForAppearingItemAtIndexPath: documentation states that by default the method returns nil but calls to super returned non-nil values. I set symbolic breaks points on the UICollectionView methods deleteItemsAtIndexPaths:, moveItemAtIndexPath:toIndexPath: and insertItemsAtIndexPaths: and none of them are hit during rotation.

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

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