ios swift图库库性能问题,一旦加载图像/视频列表,数据来自iCloud
Posted
技术标签:
【中文标题】ios swift图库库性能问题,一旦加载图像/视频列表,数据来自iCloud【英文标题】:Ios swift gallery library Performance issue, once loading image/Video list, the data is from ICloud 【发布时间】:2020-04-17 05:32:16 【问题描述】:我是 ios 新手,我正在使用第三方库来集成我的多个图像/视频选择器。图书馆链接https://github.com/hyperoslo/Gallery
本地图像/视频显示速度足够快,但问题是一旦我使用 iCloud 包含 500 多张图像,几乎需要 1 分钟。第一次加载,是他们的任何解决方案减少或几乎消除加载时间。
这是我的代码快照,可能会有所帮助
class MyGalleryViewController: UIViewController, GalleryControllerDelegate,UITabBarControllerDelegate
let gallery = GalleryController()
override func viewDidLoad()
super.viewDidLoad()
openGallery()
private func openGallery()
gallery.delegate = self
gallery.modalPresentationStyle = .fullScreen
present(gallery, animated: true, completion: nil)
//Rest of galleryController function
提前非常感谢。
【问题讨论】:
【参考方案1】:您需要遵循以下步骤:
为 iCloud 上的图像获取 PHAsset PHAsset.fetchAssets(with: .image, options: PHFetchOptions())
// Images on iCloud will be included
请求资产图片
let imageRequestOptions = PHImageRequestOptions()
imageRequestOptions.deliveryMode = .opportunistic
imageRequestOptions.isNetworkAccessAllowed = true // allowing iCloud image downloaded from network
imageRequestOptions.progressHandler = progressHandler // progressHandler is outer callback, may be called multiple times
PHCachingImageManager.default().requestImage(for: asset)
在 PHAssetImageProgressHandler 中处理图片下载进度
let progressHandler: PHAssetImageProgressHandler = (progress, _, stop, _) in
cell.updateProgress(CGFloat(progress))
iCloud 镜像的关键:
-
PHImageRequestOptions.isNetworkAccessAllowed
PHImageRequestOptions.progressHandler
【讨论】:
感谢 Rango,快速回答,但我很困惑如何使用 Gallery 库配置“PHImageRequestOptions”? 有一个 PHImageRequestOptions()。检查库源文件的第 18 行“UIImageView+Extensions.swift”。您可以修改选项并添加progressHandler来自行处理下载进度。 谢谢,我一定会试试的。 :)以上是关于ios swift图库库性能问题,一旦加载图像/视频列表,数据来自iCloud的主要内容,如果未能解决你的问题,请参考以下文章
swift iOS - Swift - 显示图库/相机的图像选择器,感谢http://www.theappguruz.com/blog/user-interaction-camera-using
swift iOS - Swift - 显示图库/相机的图像选择器,感谢http://www.theappguruz.com/blog/user-interaction-camera-using
swift iOS - Swift - 显示图库/相机的图像选择器,感谢http://www.theappguruz.com/blog/user-interaction-camera-using
swift iOS - Swift - 显示图库/相机的图像选择器,感谢http://www.theappguruz.com/blog/user-interaction-camera-using
swift iOS - Swift - 显示图库/相机的图像选择器,感谢http://www.theappguruz.com/blog/user-interaction-camera-using