【发布时间】:2021-09-10 16:46:53
【问题描述】:
我想使用领域来保存数据,但据我了解领域不支持CGFloat 和Color 属性,我搜索了解决方案,但似乎没有答案。
Saving properties not supported by RealmSwift
在文档中说:“不鼓励使用 CGFloat 属性,因为该类型与平台无关。”
在我的应用程序中,我使用 DragGesture 并且为 width 和 height 返回的值是 CGFloat 这是我的结构:
struct Card : Identifiable {
var id = UUID()
var name : String
var color : Color
var y : CGFloat = 0
var x : CGFloat = 0
}
到目前为止的数据库:
class cardDB : Object {
@objc dynamic var id = UUID()
@objc dynamic var name = ""
}
有没有办法将这两个属性保存到领域数据库?
【问题讨论】:
-
还有很多其他的方式来表示这些东西。对于
CGFloat,您可以改用Float或Double。对于Color,您可以存储一个十六进制字符串、代表 RGB(A) 的 3 或 4 个整数,或代表您的应用可以识别的颜色名称的字符串。选择适合您的具体情况的最佳表示,您尚未描述。 -
正如你所说,我使用 Float 而不是 CGFloat 并且它有效,你能解释一下关于颜色的更多信息吗?
-
您问题中的结构有一个属性
var color : Color所以他说我们不知道Color类型是什么。也许是 UIColor?
标签: swift realm data-persistence