我想将图像从
PhotosPicker
保存到 CoreData
(作为允许外部存储的二进制数据),但我遇到了问题。我在 Internet 上找不到有关 Data
类型的资源,我也不知道它的默认值。
我对其他类型很好,但对数据绝对不行,这是一个例子:
import SwiftUI
struct ContentView: View {
@State var value: Double? = nil
@State var title: String = ""
@State var image: Data? = nil
var body: some View {
Button("Add", action: {
Persistence.shared.add(value: value ?? 0, title: title, image: image ?? /* Something here */, context: viewContext)
})
}
}
Data的默认值是
Data()
,这是一个空的数据集合,很可能是你想要的。
@RobNapier 对您问题的回答是正确的,但您可能问错了问题,并且更喜欢此代码:
import SwiftUI
struct ContentView: View {
@State var value: Double? = nil
@State var title: String = ""
@State var image: Data? = nil
var body: some View {
Button("Add", action: {
guard let image else { return }
Persistence.shared.add(
value: value ?? 0,
title: title,
image: image,
context: viewContext)
})
.disabled(image == nil)
}
}