내 프로젝트에서 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
애니메이션 블록에서 해당 호출을 래핑 해 보셨습니까 ?