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