使用CloudKit和Swift检索图像

时间:2017-03-11 18:06:13

标签: ios swift swift3 cloudkit

我是CloudKit的新手。

我想知道如何从数据库中只检索一个图像。我创建了一个新的记录类型,并在其中添加了一个名为EventsImage的Asset类型。现在我想要检索此图像并将其放在我在View控制器上的ImageView中。这是View的外观图像(它不是tableViewController)。

1

(中间有一个ImageView)

1 个答案:

答案 0 :(得分:2)

这是我从数据库中恢复图像的片段。我使用记录ID获取CKRecord。

self.publicDatabase.fetch(withRecordID: recordID, completionHandler: { (record: CKRecord?, error: Error?) -> (Void) in
    guard let record = record else
    {
        if let error = error
        {
            DispatchQueue.main.async 
            {
                completionHandler(SeeYuuResult.error(message: error.localizedDescription))
            }
        }

        return
    }

    // Here is where the image is recovered
    if let asset = record["avatar"] as? CKAsset, let data = try? Data(contentsOf: asset.fileURL)
    {
        DispatchQueue.main.async 
        {
        avatar_image = UIImage(data: data)
        }
    }   
})