SwiftUI 从 UserDefaults.standard 存储和提取字典
Posted
技术标签:
【中文标题】SwiftUI 从 UserDefaults.standard 存储和提取字典【英文标题】:SwiftUI Store and Extract Dictionaries from UserDefaults.standard 【发布时间】:2021-04-26 23:10:09 【问题描述】:所以对于 Userdefaults.standard,我存储了一些键的字典,但我不知道如何从中访问值。
对于那些键,值应该是一个字典,但我假设编译器不知道这一点。如何遍历 UserDefaults 中的所有内容以查找某些键,然后访问其中包含的字典?
【问题讨论】:
【参考方案1】:DictionaryRepresentation 返回 [String : Any]
类型的值,因此您的 value
是 Any
类型,并且 Any 不一定有下标运算符。所以你需要检查它是什么类型并进行有条件的向下转换。
if let dict = value as? [String: Any] ...
但最好不要使用字典来保存数据。考虑改为使 ListItem
符合 Codable
,然后直接编码/解码 ListItem 的编码表示。
【讨论】:
以上是关于SwiftUI 从 UserDefaults.standard 存储和提取字典的主要内容,如果未能解决你的问题,请参考以下文章
从 SwiftUI 推送到 UIViewController