1

了解如何通过以下链接从 iOS 设备中检索最后一张照片

如何从 iOS 上的相机胶卷中检索最近的照片?

但是我想检索最后 20 张左右的照片,因为我不想降低性能,也不想让用户以相反的顺序查看他们的照片

我试过了

long index = group.numberOfAssets - 2;

并以这个错误结束

由于未捕获的异常“NSRangeException”而终止应用程序,原因:“*** -[NSIndexSet initWithIndexesInRange:]:范围 {4294967294, 1} 超过 NSNotFound - 1 的最大索引值”

任何人都可以在这里提供帮助吗?谢谢

ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];

[library enumerateGroupsWithTypes:ALAssetsGroupSavedPhotos usingBlock:^(ALAssetsGroup *group, BOOL *stop) {

    [group setAssetsFilter:[ALAssetsFilter allPhotos]];

    ***long index              = group.numberOfAssets - 2;***
    [group enumerateAssetsAtIndexes:[NSIndexSet indexSetWithIndex:index]
                            options:0
                         usingBlock:^(ALAsset *alAsset, NSUInteger index, BOOL *innerStop)
4

1 回答 1

1

可能是您以错误的方式枚举。This code gets the last image

    ALAssetsGroup* group = [groups lastObject]; // get all assets groups, i think you know how to get them.
    [group enumerateAssetsAtIndexes:[NSIndexSet indexSetWithIndex:(group.numberOfAssets - 1)] options:NSEnumerationConcurrent usingBlock:^(ALAsset *result, NSUInteger index, BOOL *stop)
     {
         if(result) {
                  // result is your needed last asset
             }

     }];
于 2013-03-07T17:10:13.947 回答