Ios UICollectionView重复使用单元格太频繁

Ios UICollectionView重复使用单元格太频繁,ios,objective-c,uitableview,uicollectionview,Ios,Objective C,Uitableview,Uicollectionview,我知道如何重用细胞,也知道如何不重用细胞,但这不是我要问的 我需要的是仍然重复使用一些细胞,但使其不那么频繁 假设我有10个单元格显示在屏幕上(每个单元格中都有动画GIF文件,因此设置一个单元格是消耗的),UICollectionView现在所做的是为每个显示的单元格分配10块内存,并在新单元格出现时重用内存。这使得重用过于频繁,因此它一直在设置单元格,并且使得UICollectionView的滚动有点慢 以下是我正在使用的代码: - (UICollectionViewCell *)collec

我知道如何重用细胞,也知道如何不重用细胞,但这不是我要问的

我需要的是仍然重复使用一些细胞,但使其不那么频繁

假设我有10个单元格显示在屏幕上(每个单元格中都有动画GIF文件,因此设置一个单元格是消耗的),
UICollectionView
现在所做的是为每个显示的单元格分配10块内存,并在新单元格出现时重用内存。这使得重用过于频繁,因此它一直在设置单元格,并且使得
UICollectionView
的滚动有点慢

以下是我正在使用的代码:

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
    ItemView *cell = [collectionView dequeueReusableCellWithReuseIdentifier:ITEM_VIEW_REUSE_ID forIndexPath:indexPath];

    ItemData *itemData = [[_items objectAtIndex:indexPath.section] objectAtIndex:indexPath.row];
    [cell setItemData:itemData];

    return cell;
}

我在想,有没有办法修改内部重用系统。例如,为每个正在呈现的单元格和一些甚至没有呈现的单元格分配30块内存,因此它不会一直设置单元格,我相信这将加快我的应用程序的性能

也许您希望覆盖自定义
UICollectionViewCell
子类中的
-(void)prepareforeuse
,并在那里准备单元格。可能这不是你想要的,但这只是一个想法如果GIF需要时间来设置,也许你可以通过某种方式预加载它们,这样它们就不会在每次新单元格弹出时重新创建/设置。