加速从ALAssetsLibrary读取和填充UITableView的可能方法

时间:2012-04-20 01:55:52

标签: iphone performance alassetslibrary alasset

目前,我正在使用ALAssetsLibrary从ALAssetsGroupSavedPhotos和ALAssetsGroupLibrary收集照片。在将所有资源读入数组后,我将填充UITableView([myTable reloadData])以显示照片。

我发现如果用户有很多照片,则会有越来越多的延迟。有什么方法可以加快速度吗?尽管相机胶卷或PhotoLibrary中的照片数量很多,但默认的UIIMagePicker似乎没有任何延迟。有没有办法达到同样的速度?

谢谢!

1 个答案:

答案 0 :(得分:4)

只需使用资产组的enumerateAssetsAtIndexes:(NSIndexSet *)indexSet options:(NSEnumerationOptions)options usingBlock:(ALAssetsGroupEnumerationResultsBlock)enumerationBlock列举当前需要显示的资产,而不是使用- (void)enumerateAssetsUsingBlock:(ALAssetsGroupEnumerationResultsBlock)enumerationBlock

你可以(我想你想要填写一个表视图),例如只需在indexPath.row方法中的索引tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath枚举资产。