Swiftで写真データをImageViewに表示する方法を解説します。
ファイル名が分かっている場合
ファイル名が分かっている場合、まずNCMBFileオブジェクトを作ります。
let file = NCMBFile.file(withName: "photo.jpg", data: nil) as! NCMBFile
そして getDataInBackground
を使ってデータをダウンロードします。返ってきたデータを UIImage を使って画像データに変換すれば表示できます。
file.getDataInBackground({(data, error) in if (!(error != nil)) { self.imgView.image = UIImage.init(data: data as! Data) } })
ファイル名が分かっていない場合
ファイル名が分かっていない場合はデータを検索するというワンステップが増えます。検索条件は自分の必要な条件に書き換えてください。
let query = NCMBQuery.init(className: "file")! query?.whereKey("createdAt", greaterThan: "")
後は検索を実行するだけです。
query?.findObjectsInBackground({(results, error) in if error != nil { print("error", error ?? "") } else { print(results ?? "") } })
まとめ
ファイルストアはファイルの実体を取得する前に、まず検索を行う必要があります。そして検索結果からそれぞれバイナリデータを取得していくというフローになります。ぜひ活用してください。