使用 CloudKit 和 Swift 检索图像
Retrieving an image using CloudKit and Swift
我是 CloudKit 的新手。
我想知道如何从数据库中只检索一张图像。我创建了一个新的记录类型并在其中添加了一个名为 EventsImage 的资产类型。现在我想检索此图像并将其放置在我的视图控制器上的 ImageView 中。这是视图的图像(它不是 tableViewController)。
(中间有个ImageView)
这是我从数据库中恢复图像的片段。我使用记录 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)
}
}
})
我是 CloudKit 的新手。
我想知道如何从数据库中只检索一张图像。我创建了一个新的记录类型并在其中添加了一个名为 EventsImage 的资产类型。现在我想检索此图像并将其放置在我的视图控制器上的 ImageView 中。这是视图的图像(它不是 tableViewController)。
(中间有个ImageView)
这是我从数据库中恢复图像的片段。我使用记录 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)
}
}
})