zoukankan      html  css  js  c++  java
  • iOS相册中图片按照时间排序

    ios相册默认是按照时间从过去到现在排列,图片顺序有正序和逆序,group可以用以下方法来选择顺序

    /**
    @param NSIndexSet               需要获取的相册中图片范围
    @param NSEnumerationOptions     获取图片的顺序(顺序还是逆序)
    //ALAssetsGroupEnumerationResultsBlock的参数
    @param result                   照片ALAsset对象
    @param index                    当前result在该group相册中的位置,第index位置上
    @param *stop                    需要停止的时候 *stop = YES就停止继续运行当前相册group
    */
    enumerateAssetsAtIndexes:(NSIndexSet *)indexSet options:(NSEnumerationOptions)options usingBlock:(ALAssetsGroupEnumerationResultsBlock)enumerationBlock

    示例如下

    @property (nonatomic, strong) ALAssetsGroup *selectAssetsGroup;
    -(void)loadAllPhotos{
        NSInteger photoNumber = [self.selectAssetsGroup numberOfAssets];
        NSIndexSet *IndexSet = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, photoNumber)];
        //图片按照逆序排列(由现在到过去)
        [self.selectAssetsGroup enumerateAssetsAtIndexes:IndexSet options:NSEnumerationReverse usingBlock:^(ALAsset *result, NSUInteger index, BOOL *stop) {
            if (result) {
                numberOfAssets++;
                NSString *type = [result valueForProperty:ALAssetPropertyType];
                if ([type isEqualToString:ALAssetTypePhoto]){
                    numberOfPhotos++;
                }else if ([type isEqualToString:ALAssetTypeVideo]){
                    numberOfVideos++;
                }
                [assets addObject:result];
            }
        }];
    }

    若只想按照系统默认的顺序(由过去到现在),那么可以用

    [self.selectAssetsGroup enumerateAssetsUsingBlock:^(ALAsset *result, NSUInteger index, BOOL *stop) {
        if (result) {
            numberOfAssets++;
            NSString *type = [result valueForProperty:ALAssetPropertyType];
            if ([type isEqualToString:ALAssetTypePhoto]){
                numberOfPhotos++;
            }else if ([type isEqualToString:ALAssetTypeVideo]){
                numberOfVideos++;
            }
            [assets addObject:result];
        }
    }];
  • 相关阅读:
    3305: Hero In Maze II (优先队列+bfs)
    2016年5月8日 GDCPC省赛总结
    POJ 2361 Tic Tac Toe
    about 字节
    KMP模式匹配
    scau 8616 汽车拉力比赛
    海盗分金--大于半数才成立
    scau 10692 XYM-入门之道
    函数模板和类模板成员函数的定义通常放在头文件中
    c语言运算符优先级巧记
  • 原文地址:https://www.cnblogs.com/Apologize/p/6097001.html
Copyright © 2011-2022 走看看