我有一个浮动(rate
),可以由用户为这个应用程序设置。我想保持这个变量的持久性,所以我想使用@AppStorage
属性包装器。我遇到的问题是@AppStorage("rate) var rate: Float = 0.5
给了No exact matches in call to initializer
。在谷歌上搜索了一下之后,我了解到你不能将浮动存储在应用存储中。有办法解决这个问题吗?
查看AppStorage
的定义,您可以找到以下允许的类型:
Bool
Int
Double
String
URL
Data
- 带
Int
原始值的enum - 带有
String
原始值的enum Bool?
Int?
Double?
String?
URL?
Data?
- 可选enum,
Int
的原始值 - 可选enum,
String
原始值
所以你可能应该使用Double
,而不是Float
(你不应该真的使用Float
,因为它是32位而不是64位)。