您可以使用Transformable
,尽管它必须存储为UIColor
而不是Color
:
这
withRootObject
是您要保存的颜色。
另请记住,该myColour
类型应该是Data
:
@NSManaged public var myColour: Data?
然后您可以像下面这样归档数据:
do {
try obj.myColour = NSKeyedArchiver.archivedData(withRootObject: UIColor.blue, requiringSecureCoding: false)
} catch {
print(error)
}
Run Code Online (Sandbox Code Playgroud)
使用以下方法检索它:
func getColour(data: Data) -> Color {
do {
return try Color(NSKeyedUnarchiver.unarchivedObject(ofClass: UIColor.self, from: data)!)
} catch {
print(error)
}
return Color.clear
}
Run Code Online (Sandbox Code Playgroud)
用法:
Text("This is some blue text.") // we saved it as UIColor.blue earlier.
.foregroundColor(self.getColour(data: self.data.myColour!))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4481 次 |
最近记录: |