1

PHAsset から完全なイメージをリクエストしようとしています。

私のコードは次のとおりです

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

私はこのエラーが発生しています:

ここに画像の説明を入力

この呼び出しに関するドキュメントを読みました ( 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 からフルサイズの画像を要求する方法や、最初のコード ブロックの構文の何が問題なのかについての洞察が欲しいです。

ありがとう

更新:エラーメッセージは次のとおりです

「'(PHAsset、options:NilLiteralConvertible、(($T6、($T6、$T7、$T8、($T6、$T7、$T8)... ."

4

2 に答える 2

0

「in」がすべてを台無しにした後、ブラケットが判明します。

これらのブラケットを削除すると、問題が修正されました

for asset in _selectedAssets
        {
            PHImageManager.defaultManager().requestImageDataForAsset(asset, options: nil)
            {
                imageData,dataUTI,orientation,info in
                println("worked")
            }
        }
于 2014-10-29T18:07:17.513 に答える
0

これは私のために働く:

PHImageManager.defaultManager().requestImageDataForAsset(asset, options: requestOptions) {
    (imageData: NSData!, dataUTI: String!, orientation: UIImageOrientation, info: [NSObject : AnyObject]!) -> Void in
    println("Yay!")
}
于 2015-02-26T14:46:25.877 に答える