Heim > Fragen und Antworten > Hauptteil
我在写一个照片选取控件,想实现livephoto功能,遇到几个问题,希望大神能告知如何处理.
在获取相册的时候一般有如下代码
PHFetchOptions *option = [[PHFetchOptions alloc] init];
option.predicate = [NSPredicate predicateWithFormat:@"mediaType == %ld", PHAssetMediaTypeImage];
但是如果我想同时获取普通照片和livephoto应该怎样写?
是不是PHAssetMediaTypeImage 包括了 PHAssetMediaSubtypePhotoLive?
当我获取了一个phasset对象 如何获取里面的livephoto图片?
PHPz2017-04-17 17:41:34
这个问题我找到解决方法了,写了篇博客,里面有解决方法:http://nicreals.github.io/2016/03/09/Live-Photo/#more
PHPz2017-04-17 17:41:34
if ([asset isKindOfClass:[PHAsset class]]) {
PHAsset *phAsset = (PHAsset *)asset;
if (phAsset.mediaType == PHAssetMediaTypeVideo) type = TZAssetModelMediaTypeVideo;
else if (phAsset.mediaType == PHAssetMediaTypeAudio) type = TZAssetModelMediaTypeAudio;
else if (phAsset.mediaType == PHAssetMediaTypeImage) {
if (iOS9_1Later) {
if (phAsset.mediaSubtypes == PHAssetMediaSubtypePhotoLive) type = TZAssetModelMediaTypeLivePhoto;
}
// Gif
if ([[phAsset valueForKey:@"filename"] hasSuffix:@"GIF"]) {
type = TZAssetModelMediaTypePhotoGif;
}
}