В моем проекте я использую UICollectionView для отображения сетки значков.
Пользователь может изменить порядок, щелкнув сегментированный элемент управления, который вызывает выборку из основных данных с другим NSSortDescriptor.
Объем данных всегда одинаков, просто попадает в разные разделы / строки:
- (IBAction)sortSegmentedControlChanged:(id)sender {
_fetchedResultsController = nil;
_fetchedResultsController = [self newFetchResultsControllerForSort];
NSError *error;
if (![self.fetchedResultsController performFetch:&error]) {
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
}
[self.collectionView reloadData];
}
Проблема в том, что reloadData не анимирует изменение, UICollectionView просто появляется с новыми данными.
Следует ли мне отслеживать, в каком indexPath находилась ячейка до и после изменения, и использовать [self.collectionView moveItemAtIndexPath: toIndexPath:] для выполнения анимации для изменения или есть лучший метод?
Я не особо разбирался в создании подклассов collectionViews, поэтому любая помощь будет отличной ...
Спасибо, Билл.
reloadData
вызов в блок анимации?