2011-11-14 8 views
3

ALAssetsLibraryを使用して処理しています。 すべてのサムネイルを取得すると、UIImageViewsを使用してサムネイルを保持し、ホルダーに追加するだけです。 問題はここにあります。追加するのが実際には遅いです。おそらく10秒以上。多くの写真がある場合、それはより遅くなります。ALAssetsLibraryでサムネイルを取得する最善の方法

これらのサムネイルを保持するのがベストプラクティスであることを知りたいと思います。 (感謝!)

答えて

8

使用AlAsset aspectRatioThumbnailの代わりに、高性能

ALAssetは、サムネイルを取得するには、2つのメソッドがあるクラスのfullResolutionImage

- (CGImageRef)thumbnail 
- (CGImageRef)aspectRatioThumbnail 

例:

//ALAssetsLibrary block will execute in a separate thread. So I suggest to do the UI related stuff in main thread. 
dispatch_sync(dispatch_get_main_queue(), ^{ 

    CGImageRef iref = [myasset aspectRatioThumbnail]; 
    itemToAdd.image = [UIImage imageWithCGImage:iref]; 

});//end block 
関連する問題