QMUIAssetsGroup

@interface QMUIAssetsGroup : NSObject

- (instancetype)initWithPHCollection:(PHAssetCollection *)phAssetCollection;

- (instancetype)initWithPHCollection:(PHAssetCollection *)phAssetCollection fetchAssetsOptions:(PHFetchOptions *)pHFetchOptions;

/// 仅能通过 initWithPHCollection 和 initWithPHCollection:fetchAssetsOption 方法修改 phAssetCollection 的值
@property(nonatomic, strong, readonly) PHAssetCollection *phAssetCollection;

/// 仅能通过 initWithPHCollection 和 initWithPHCollection:fetchAssetsOption 方法修改 phAssetCollection 后,产生一个对应的 PHAssetsFetchResults 保存到 phFetchResult 中
@property(nonatomic, strong, readonly) PHFetchResult *phFetchResult;

/// 相册的名称
- (NSString *)name;

/// 相册内的资源数量,包括视频、图片、音频(如果支持)这些类型的所有资源
- (NSInteger)numberOfAssets;

/**
 *  相册的缩略图,即系统接口中的相册海报(Poster Image)
 *
 *  @return 相册的缩略图
 */
- (UIImage *)posterImageWithSize:(CGSize)size;

/**
 *  枚举相册内所有的资源
 *
 *  @param albumSortType    相册内资源的排序方式,可以选择日期最新的排在最前面,也可以选择日期最新的排在最后面
 *  @param enumerationBlock 枚举相册内资源时调用的 block,参数 result 表示每次枚举时对应的资源。
 *                          枚举所有资源结束后,enumerationBlock 会被再调用一次,这时 result 的值为 nil。
 *                          可以以此作为判断枚举结束的标记
 */
- (void)enumerateAssetsWithOptions:(QMUIAlbumSortType)albumSortType usingBlock:(void (^)(QMUIAsset *resultAsset))enumerationBlock;

/**
 *  枚举相册内所有的资源,相册内资源按日期最新的排在最后面
 *
 *  @param enumerationBlock 枚举相册内资源时调用的 block,参数 result 表示每次枚举时对应的资源。
 *                          枚举所有资源结束后,enumerationBlock 会被再调用一次,这时 result 的值为 nil。
 *                          可以以此作为判断枚举结束的标记
 */
- (void)enumerateAssetsUsingBlock:(void (^)(QMUIAsset *result))enumerationBlock;

@end

Undocumented

  • Undocumented

    Declaration

    Objective-C

    - (instancetype)initWithPHCollection:(PHAssetCollection *)phAssetCollection;

    Swift

    init!(phCollection phAssetCollection: PHAssetCollection!)
  • Undocumented

    Declaration

    Objective-C

    - (instancetype)initWithPHCollection:(PHAssetCollection *)phAssetCollection fetchAssetsOptions:(PHFetchOptions *)pHFetchOptions;

    Swift

    init!(phCollection phAssetCollection: PHAssetCollection!, fetchAssetsOptions pHFetchOptions: PHFetchOptions!)
  • 仅能通过 initWithPHCollection 和 initWithPHCollection:fetchAssetsOption 方法修改 phAssetCollection 的值

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) PHAssetCollection *phAssetCollection;

    Swift

    var phAssetCollection: PHAssetCollection! { get }
  • 仅能通过 initWithPHCollection 和 initWithPHCollection:fetchAssetsOption 方法修改 phAssetCollection 后,产生一个对应的 PHAssetsFetchResults 保存到 phFetchResult 中

    Declaration

    Objective-C

    @property (nonatomic, strong, readonly) PHFetchResult *phFetchResult;

    Swift

    var phFetchResult: PHFetchResult<AnyObject>! { get }
  • 相册的名称

    Declaration

    Objective-C

    - (NSString *)name;

    Swift

    func name() -> String!
  • 相册内的资源数量,包括视频、图片、音频(如果支持)这些类型的所有资源

    Declaration

    Objective-C

    - (NSInteger)numberOfAssets;

    Swift

    func numberOfAssets() -> Int
  • 相册的缩略图,即系统接口中的相册海报(Poster Image)

    Declaration

    Objective-C

    - (UIImage *)posterImageWithSize:(CGSize)size;

    Swift

    func posterImage(with size: CGSize) -> UIImage!

    Return Value

    相册的缩略图

  • 枚举相册内所有的资源

    Declaration

    Objective-C

    - (void)enumerateAssetsWithOptions:(QMUIAlbumSortType)albumSortType
                            usingBlock:(void (^)(QMUIAsset *))enumerationBlock;

    Swift

    func enumerateAssets(withOptions albumSortType: QMUIAlbumSortType, using enumerationBlock: ((QMUIAsset?) -> Void)!)

    Parameters

    albumSortType

    相册内资源的排序方式,可以选择日期最新的排在最前面,也可以选择日期最新的排在最后面

    enumerationBlock

    枚举相册内资源时调用的 block,参数 result 表示每次枚举时对应的资源。 枚举所有资源结束后,enumerationBlock 会被再调用一次,这时 result 的值为 nil。 可以以此作为判断枚举结束的标记

  • 枚举相册内所有的资源,相册内资源按日期最新的排在最后面

    Declaration

    Objective-C

    - (void)enumerateAssetsUsingBlock:(void (^)(QMUIAsset *))enumerationBlock;

    Swift

    func enumerateAssets(_ enumerationBlock: ((QMUIAsset?) -> Void)!)

    Parameters

    enumerationBlock

    枚举相册内资源时调用的 block,参数 result 表示每次枚举时对应的资源。 枚举所有资源结束后,enumerationBlock 会被再调用一次,这时 result 的值为 nil。 可以以此作为判断枚举结束的标记