TZAssetModel.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. //
  2. // TZAssetModel.h
  3. // TZImagePickerController
  4. //
  5. // Created by 谭真 on 15/12/24.
  6. // Copyright © 2015年 谭真. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import <UIKit/UIKit.h>
  10. typedef enum : NSUInteger {
  11. TZAssetModelMediaTypePhoto = 0,
  12. TZAssetModelMediaTypeLivePhoto,
  13. TZAssetModelMediaTypePhotoGif,
  14. TZAssetModelMediaTypeVideo,
  15. TZAssetModelMediaTypeAudio
  16. } TZAssetModelMediaType;
  17. @class PHAsset;
  18. @interface TZAssetModel : NSObject
  19. @property (nonatomic, strong) id asset; ///< PHAsset or ALAsset
  20. @property (nonatomic, assign) BOOL isSelected; ///< The select status of a photo, default is No
  21. @property (nonatomic, assign) TZAssetModelMediaType type;
  22. @property (nonatomic, copy) NSString *timeLength;
  23. /// Init a photo dataModel With a asset
  24. /// 用一个PHAsset/ALAsset实例,初始化一个照片模型
  25. + (instancetype)modelWithAsset:(id)asset type:(TZAssetModelMediaType)type;
  26. + (instancetype)modelWithAsset:(id)asset type:(TZAssetModelMediaType)type timeLength:(NSString *)timeLength;
  27. @end
  28. @class PHFetchResult;
  29. @interface TZAlbumModel : NSObject
  30. @property (nonatomic, strong) NSString *name; ///< The album name
  31. @property (nonatomic, assign) NSInteger count; ///< Count of photos the album contain
  32. @property (nonatomic, strong) id result; ///< PHFetchResult<PHAsset> or ALAssetsGroup<ALAsset>
  33. @property (nonatomic, strong) NSArray *models;
  34. @property (nonatomic, strong) NSArray *selectedModels;
  35. @property (nonatomic, assign) NSUInteger selectedCount;
  36. @end