requestImageDataForAsset结果处理程序格式不正确

时间:2014-10-29 17:34:15

标签: ios xcode swift uiimage phasset

我正在尝试从PHAsset请求完整图像。

我的代码如下

@IBAction func nextTap(sender: AnyObject)
    {
        for asset in _selectedAssets
        {
            PHImageManager.defaultManager().requestImageDataForAsset(asset, options: nil)
            {
                imageData,dataUTI,orientation,info in
                {
                    println("worked")
                }
            }
        }
    }

我收到此错误:

enter image description here

我已阅读此次通话的文档(https://developer.apple.com/library/IOs/documentation/Photos/Reference/PHImageManager_Class/index.html#//apple_ref/occ/instm/PHImageManager/requestImageDataForAsset:options:resultHandler:)

我认为,我遵循所需的尾随语法闭包,并输入适当的参数。

我也在观看WWDC 2014视频。

似乎无法让这个用于完整图像。

如果我想要一个较小尺寸的图像,我使用了这段代码:

PHImageManager.defaultManager().requestImageForAsset(asset, targetSize:_cellSize, contentMode: .AspectFill, options: nil)
        {
            result, info in
            if reuseCount == cell.reuseCount
            {
                cell.imageView.image = result
                cell.imageView.frame = CGRectMake(0, 0,self._cellSize.width,self._cellSize.height)
            }
        }

这很有效。

所以我不确定我在第一次调用时遇到了什么问题,但是我很想知道如何从PHAsset请求一个完整大小的图像和/或我的语法在第一个代码块中出错了。

由于

更新: 这是错误消息

“无法使用参数列表类型'调用'println()'(PHAsset,选项:NilLiteralConvertible,(($ T6,($ T6,$ T7,$ T8,($ T6,$ T7,$ T8) ......“

2 个答案:

答案 0 :(得分:0)

'''搞砸了一切。

删除这些括号解决了问题

for asset in _selectedAssets
        {
            PHImageManager.defaultManager().requestImageDataForAsset(asset, options: nil)
            {
                imageData,dataUTI,orientation,info in
                println("worked")
            }
        }

答案 1 :(得分:0)

这对我有用:

PHImageManager.defaultManager().requestImageDataForAsset(asset, options: requestOptions) {
    (imageData: NSData!, dataUTI: String!, orientation: UIImageOrientation, info: [NSObject : AnyObject]!) -> Void in
    println("Yay!")
}