首先,请允许我说这是我第一次使用ALAssetsLibrary。我需要访问用户保存的照片库中的最新照片。看来,要做到这一点,我必须创建一个ALAssetsLibrary实例,并在选择最后一个图像之前遍历用户库中的每个项目。这始终是最坏的情况。是否有更快/更好的方法来解决此问题?
最佳答案
您不必列举用户画廊中的所有照片。
ALAssetsGroup类具有- (void)enumerateAssetsAtIndexes:(NSIndexSet *)indexSet options:(NSEnumerationOptions)options usingBlock:(ALAssetsGroupEnumerationResultsBlock)enumerationBlock
方法,可用于指示要枚举的 Assets 。
在您的情况下,它只是最后一个,因此将indexSet设置为[NSIndexSet indexSetWithIndexesInRange:NSMakeRange([group numberOfAssets]-1, [group numberOfAssets])
,其中group是您的ALAssetsGroup。
如@mithuntnt所述,您可以使用[[assetsLibrary] enumerateGroupsWithTypes:ALAssetsGroupAlbum usingBlock:^(ALAssetsGroup *group, BOOL *stop)
获取照片库的ALAssetsGroup
关于iphone - 使用ALAssetsLibrary访问单个图像,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6336770/