因此,对于Userdefaults.standard,我存储了一些键的字典,但我不知道如何访问其中的值。

对于这些键,value应该是一个字典,但我假设编译器不知道这一点。如何遍历UserDefaults中的所有内容以找到特定的键,然后访问其中包含的字典?
发布于 2021-04-27 16:02:29
DictionaryRepresentation返回一个[String : Any]类型的值,因此您的value是Any类型,Any不一定有下标运算符。因此,您需要检查它是什么类型,并进行条件向下转换。
if let dict = value as? [String: Any] { ... }但是不使用字典来持久化数据可能是一个更好的主意。相反,可以考虑让ListItem符合Codable,然后直接编码/解码ListItem的编码表示。
https://stackoverflow.com/questions/67274860
复制相似问题