ALAssetsLibraryGroupsEnumerationResultsBlock in swift 3
问题描述:
由于我将项目“升级”到Swift 3,因此在尝试使用ALAssetLibrary
时出现异常。我使用这个而不是照片库,因为我想为照片文件编写大量的元数据,到目前为止我还没有找到一种方法来处理照片库。ALAssetsLibraryGroupsEnumerationResultsBlock in swift 3
下面的代码现在失败:
let usingBlock = {
(group: ALAssetsGroup?, stop: UnsafeMutablePointer<ObjCBool>) in
// Code to execute
} as! ALAssetsLibraryGroupsEnumerationResultsBlock
看来,转换失败。我需要ALAssetsLibraryGroupsEnumerationResultsBlock
类型的对象才能拨打ALAssetsLibrary.enumerateGroupsWithTypes
。
我再次知道这是弃用,但它应该仍然工作不知何故不应该?
答
ALAssetsLibraryGroupsEnumerationResultsBlock的签名已改为 typealias ALAssetsLibraryGroupsEnumerationResultsBlock = (ALAssetsGroup?, UnsafeMutablePointer<ObjCBool>?) -> Void
你需要做stop参数可选,然后它应该工作(见apple docs