您可以使用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 次 |
| 最近记录: |