UICollectionView прекращает загрузку ячеек после moveItemAtIndexPath:toIndexPath:
У меня есть UICollectionView
с UICollectionViewFlowLayout
который содержит много предметов. Я хочу изменить порядок ячеек из-за ввода пользователя.
[self.collectionView moveItemAtIndexPath:indexPath toIndexPath:newIndexPath];
После выполнения этого кода представление коллекции не обновляет свое содержимое при прокрутке. Это не показывает следующие клетки. Это даже не вызов cellForItemAtIndexPath:
но размер его содержимого правильный (макет "обновляет" его состояние). Поэтому мы можем видеть только те ячейки, которые были распределены в представлении коллекции до переупорядочения. Любые подсказки, в чем может быть проблема? Есть ли известные обходные пути для этой проблемы? Приложение только для iOS 8, а представление коллекции используется с UICollectionViewFlowLayout.
РЕДАКТИРОВАТЬ: Когда я звоню [self.collectionView reloadData];
источник данных даже не запрашивается.
1 ответ
Проблема была с UICollectionViewCell
, Высокоуровневым описанием является то, что в ячейку отправляется метод actionForKey
из моего кода во время анимации движения. Это заставило клетку оставаться во внутренней being animated
государство. Я не мог найти разумного обходного пути и переработал некоторые биты, чтобы избежать actionForKey
вызов. Теперь все работает как положено.