iOS 8 (Swift) 如何摆脱这个错误 : ImageIO: PNG zlib error?

标签 ios swift ios8

我正在制作一个应用程序,我想拍摄最近的照片并使用 UI 事件 View Controller 分享它。出于某种原因,当我尝试分享照片时出现错误

ImageIO: PNG zlib 错误

相关代码如下:

let imgManager = PHImageManager.defaultManager()
var fetchOptions = PHFetchOptions()
let screenSize: CGSize = UIScreen.mainScreen().bounds.size
let targetSize = CGSizeMake(screenSize.width, screenSize.height)
var imagesArray: NSMutableArray = []

fetchOptions.sortDescriptors = [NSSortDescriptor(key:"creationDate", ascending: true)]
if let fetchResult = PHAsset.fetchAssetsWithMediaType(PHAssetMediaType.Image, options: fetchOptions) {
    imgManager.requestImageForAsset(fetchResult.lastObject as PHAsset, targetSize: targetSize, contentMode: PHImageContentMode.AspectFill, options: nil, resultHandler: { (image, _) in            
        imagesArray.addObject(image)
    })
}

let activityViewController = UIActivityViewController(
        activityItems: imagesArray,//[textField.text as NSString],
        applicationActivities: nil)

presentViewController(activityViewController, animated: true, completion: nil)

我不知道发生了什么,也不知道错误来自哪里

最佳答案

我在 iOS8 应用程序上分享图片时遇到了同样的错误。我通过像这样同步获取图像来解决它。

 PHImageRequestOptions *options = [[PHImageRequestOptions alloc]init];
 options.synchronous  = YES;

希望这对您有所帮助。

关于iOS 8 (Swift) 如何摆脱这个错误 : ImageIO: PNG zlib error?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28117605/

相关文章:

iOS 8 在 10 分钟后停止在后台播放音频

设备上的 iOS 测试应用程序,两个不同的区域

ios - 即使我重新启动 iPhone,如何保存分数?

ios - apns 是否需要为每个应用程序开发提供证书?

swift - 将元素添加到可选数组出现零?

ios - 为什么使用开发证书或企业证书签名的 iOS 应用程序启动速度较慢?

ios - 在 SwiftUI TextField 中实现 token

swift - 如何在 SwiftUI 中的表单段上添加填充

ios - 对来自 FBSDKGraphRequest 的结果进行类型化访问(FBSDK v 4.1.0)

ios - 当应用程序进入前台时重新加载 CloudKit 数据