swift 3 中的 ALAssetsLibraryGroupsEnumerationResultsBlock
Posted
技术标签:
【中文标题】swift 3 中的 ALAssetsLibraryGroupsEnumerationResultsBlock【英文标题】:ALAssetsLibraryGroupsEnumerationResultsBlock in swift 3 【发布时间】:2017-04-26 19:11:09 【问题描述】:由于我将项目“升级”到 Swift 3,因此在尝试使用 ALAssetLibrary
时出现异常。我使用它而不是照片库,因为我想将大量元数据写入照片文件,但到目前为止我还没有找到使用照片库执行此操作的方法。
以下代码现在失败:
let usingBlock =
(group: ALAssetsGroup?, stop: UnsafeMutablePointer<ObjCBool>) in
// Code to execute
as! ALAssetsLibraryGroupsEnumerationResultsBlock
看来演员阵容失败了。我需要一个ALAssetsLibraryGroupsEnumerationResultsBlock
类型的对象才能调用ALAssetsLibrary.enumerateGroupsWithTypes
。
我再次知道这已被弃用,但它应该仍然可以工作,不是吗?
【问题讨论】:
【参考方案1】:ALAssetsLibraryGroupsEnumerationResultsBlock 的签名已更改为
typealias ALAssetsLibraryGroupsEnumerationResultsBlock = (ALAssetsGroup?, UnsafeMutablePointer<ObjCBool>?) -> Void
您需要将 stop 参数设为可选参数,然后它应该可以工作(请参阅apple docs
【讨论】:
以上是关于swift 3 中的 ALAssetsLibraryGroupsEnumerationResultsBlock的主要内容,如果未能解决你的问题,请参考以下文章
swift 3中的ResponseCollectionSerializable
Swift 3 中的 managedObjectContext