优化相册筛选内容的代码
This commit is contained in:
parent
b682664cbf
commit
94588c4e89
Binary file not shown.
@ -353,53 +353,21 @@ class CCSpaceAlbumFilterPopView2: UIView {
|
|||||||
let fetchOptions = PHFetchOptions()
|
let fetchOptions = PHFetchOptions()
|
||||||
//ascending 为YES时,按照照片的创建时间升序排列;为NO时,则降序排列
|
//ascending 为YES时,按照照片的创建时间升序排列;为NO时,则降序排列
|
||||||
fetchOptions.sortDescriptors = [NSSortDescriptor(key: "creationDate", ascending: false)]
|
fetchOptions.sortDescriptors = [NSSortDescriptor(key: "creationDate", ascending: false)]
|
||||||
// if self.selectedFileType != .all {
|
if self.selectedFileType != .all {
|
||||||
// let format = "mediaType=%d"
|
let predicate = NSPredicate(format: "mediaType = %d",
|
||||||
// let mt = PHAssetMediaType.init(rawValue: self.selectedFileType.rawValue)!
|
self.selectedFileType.rawValue)
|
||||||
// fetchOptions.predicate = NSPredicate(format: format,
|
fetchOptions.predicate = predicate
|
||||||
// argumentArray: [mt])
|
}
|
||||||
// }
|
|
||||||
let fetchResult_asset = PHAsset.fetchAssets(in: sac, options: fetchOptions)
|
let fetchResult_asset = PHAsset.fetchAssets(in: sac, options: fetchOptions)
|
||||||
var count = 0
|
var count = 0
|
||||||
switch self.selectedFileType {
|
for i in offset ..< fetchResult_asset.count {
|
||||||
case .all:
|
let asset = fetchResult_asset.object(at: i)
|
||||||
for i in offset ..< fetchResult_asset.count {
|
addImageFromAsset(asset: asset)
|
||||||
let asset = fetchResult_asset.object(at: i)
|
count += 1
|
||||||
addImageFromAsset(asset: asset)
|
if count >= filterLimit {
|
||||||
count += 1
|
break
|
||||||
if count >= filterLimit {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
break
|
|
||||||
case .image:
|
|
||||||
for i in offset ..< fetchResult_asset.count {
|
|
||||||
let asset = fetchResult_asset.object(at: i)
|
|
||||||
if asset.mediaType == .image {
|
|
||||||
addImageFromAsset(asset: asset)
|
|
||||||
count += 1
|
|
||||||
if count >= filterLimit {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
break
|
|
||||||
case .video:
|
|
||||||
for i in offset ..< fetchResult_asset.count {
|
|
||||||
let asset = fetchResult_asset.object(at: i)
|
|
||||||
if asset.mediaType == .video {
|
|
||||||
addImageFromAsset(asset: asset)
|
|
||||||
count += 1
|
|
||||||
if count >= filterLimit {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
break
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
self.listCollectView.reloadData()
|
self.listCollectView.reloadData()
|
||||||
@ -413,11 +381,14 @@ class CCSpaceAlbumFilterPopView2: UIView {
|
|||||||
requestOptions.deliveryMode = .highQualityFormat
|
requestOptions.deliveryMode = .highQualityFormat
|
||||||
print("asset mediatype:\(asset.mediaType)")
|
print("asset mediatype:\(asset.mediaType)")
|
||||||
PHImageManager.default().requestImageDataAndOrientation(for: asset, options: requestOptions) {[weak self] data, dataUTI, imagePropertyOrientation, info in
|
PHImageManager.default().requestImageDataAndOrientation(for: asset, options: requestOptions) {[weak self] data, dataUTI, imagePropertyOrientation, info in
|
||||||
let photoImage:UIImage = UIImage(data: data!)!
|
if let hasData = data {
|
||||||
//创建model
|
let photoImage:UIImage = UIImage(data: hasData)!
|
||||||
let model = CCSpaceAlbumFliterModel.initWithAssetType(assetType: AssetType.init(rawValue: asset.mediaType.rawValue-1)!, asset: asset,image:photoImage, localIdentifier: asset.localIdentifier)
|
//创建model
|
||||||
self?.dataSource.append(model)
|
let model = CCSpaceAlbumFliterModel.initWithAssetType(assetType: AssetType.init(rawValue: asset.mediaType.rawValue-1)!, asset: asset,image:photoImage, localIdentifier: asset.localIdentifier)
|
||||||
self?.listReloadData()
|
self?.dataSource.append(model)
|
||||||
|
self?.listReloadData()
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user