В моем проекте я использую 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:] для выполнения анимации для изменения или есть лучший метод?
Я не получил много в subclassing collectionViews, поэтому любая помощь будет большой...
Спасибо, Билл.