#ios #swift
Вопрос:
У меня есть функция float ( rate
), которая может быть установлена пользователем для этого приложения. Я хотел бы сохранить эту переменную постоянной, поэтому я хотел бы использовать оболочку @AppStorage
свойств. Проблема, с которой я сталкиваюсь, заключается в том, что это @AppStorage("rate) var rate: Float = 0.5
дает No exact matches in call to initializer
. После недолгого поиска в Google я узнал, что вы не можете хранить поплавки в хранилище приложений. Есть ли способ обойти это?
Комментарии:
1. Использовать а
Double
вместо аFloat
?
Ответ №1:
Глядя на определение AppStorage
, вы можете найти следующие разрешенные типы:
Bool
Int
Double
String
URL
Data
- перечисление с
Int
сырой ценностью - перечисление с
String
сырой ценностью Bool?
Int?
Double?
String?
URL?
Data?
- необязательное перечисление с
Int
исходным значением - необязательное перечисление с
String
исходным значением
Поэтому вам , вероятно, следует использовать Double
, а не Float
(вы все равно не должны использовать Float
, так как он 32-разрядный, а не 64-разрядный).