1
我試圖在core data
中存儲圖像。將圖像轉換爲NSData以保存核心數據
我core data
屬性文件要求圖像是在NSData
:
import Foundation
import CoreData
extension Item {
@nonobjc public class func fetchRequest() -> NSFetchRequest<TaskItem> {
return NSFetchRequest<TaskItem>(entityName: "Item");
}
@NSManaged public var itemImage: NSData?
}
然而,當我試圖使用保存到core data
:
@IBAction func saveBtnTapped(_ sender: AnyObject) {
let context = (UIApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext
let item = Item(context: context)
let imageData: NSData = UIImageJPEGRepresentation(taskImage.image!, 0.2)
item.itemImage = imageData
(UIApplication.shared.delegate as! AppDelegate).saveContext()
}
navigationController?.popViewController(animated: true)
}
我得到以下錯誤:
Cannot convert value of type 'Data?' to specified type 'NSData'
我以爲我在做它是正確的,但它不適合我。有人能給我一個如何解決它的想法嗎?
在此先感謝。
不要將圖像保存到核心數據中,只是將圖像保存到磁盤並將圖像名稱/路徑保存到coredata – Tj3n
您可以將圖像保存到本地目錄,然後將路徑/ URL保存到coredata。 –
如果一切都失敗了,我會走這條路 – SwiftStarter