是否可以预加载所有tableview单元格以实现平滑滚动?

时间:2009-08-29 04:16:58

标签: iphone uitableview tableview

我有一个tableview,它只包含几个(~5个)单元格,每个单元格中有一个大图像。是否可以预加载所有单元以提高滚动性能? 现在,每个单元格加载时都会有轻微的抖动。 谢谢!

4 个答案:

答案 0 :(得分:2)

我认为不可能直接告诉TableView预先创建其所有单元格,但假设慢速部分正在加载图像,您当然可以预先加载图像,将它们保存在NSArray中或一些东西,然后在它们被创建时将它们放入细胞中应该很快。

答案 1 :(得分:1)

是。您可以。它会占用记忆,但性能会最大化。

但只有当你确定细胞不是太大时才这样做。也永远不要忘记释放它们。

答案 2 :(得分:0)

我发现我的tableview滚动不佳的原因是因为照片的加载方式。使用imageNamed加载图像修复了我的所有问题。

UIImage *theImage = [UIImage imageNamed:[[appDelegate.myDelegateDict objectAtIndex:indexPath.section] objectForKey:@"MainImage"]];

答案 3 :(得分:0)

它不是创建你的问题的tableview单元格,它是你从/调整它们的过程中访问图像的地方,所以你需要事先做到这一点,或者让它成为异步的,所以它不会不要减慢dow cell加载和滚动。

我经历过这个问题。有关解决方案,请参阅this question and answer