以下是我保存和获取数据的代码:
protocol SettingsManagerProtocol: AnyObject
{
var host: String
{
get set
}
}
class SettingsManager: NSObject, SettingsManagerProtocol
{
private var _defaults: UserDefaults?
private var defaults: UserDefaults
{
if let _defaults = _defaults {
return _defaults
}
else {
_defaults = UserDefaults.standard
}
return _defaults ?? UserDefaults.standard
}
var host: String
{
get
{
print("Get value", defaults.value(forKey: SETTING_HOST) as? String ?? "")
print(defaults.dictionaryRepresentation())
return defaults.string(forKey: SETTING_HOST) ?? ""
}
set
{
defaults.set(newValue, forKey: SETTING_HOST)
}
}
}
设置我正在使用的值
app.settings?.host = txtHost.text
现在的问题是我保存了一个值并关闭应用程序并重新启动它。现在有时获取的值不是更新的值,而我在同一时间检查了该值并对其进行了更新。谁能帮我解决这个问题?