【发布时间】:2019-10-03 21:35:59
【问题描述】:
所以我有一个 plist,其中包含我想在我的项目中访问的许多项目。 plist 是一个项目数组,这些项目又是类型为 string:string (Item1 -> "name" : "somename", "description" : "somedescription") 的字典
我只想访问我的项目的名称值,并显示在一个数组中。我已经设法使用以下代码检索了 plist 中的所有键值对:
let path = Bundle.main.path(forResource: "PlistName", ofType: "plist")
let dict = NSArray.init(contentsOf: URL.init(fileURLWithPath: path!)) as! [[String:String]]
通过使用 print(dict),我可以将所有内容打印到控制台,但是就像我说的,我只想要数组中项目的名称。
最让我困惑的是 dict 等于 [[String:String]] 类型的 NSArray。我不明白数组如何是 String:String 类型的。这对我来说就像一本字典。我尝试将 NSArray 更改为 NSDictionary,但这给了我一个错误提示
“从 'NSDictionary' 转换?到不相关的类型 '[[String : String]]' 总是失败”
我也无法利用 dict 的键或值。
【问题讨论】:
-
[String: String]是一本字典。[[String: String]]是一个字典数组。 -
啊,这解释了很多,谢谢!那么,将其分解为仅包含一个字典值的数组的最简单方法是什么?
标签: arrays swift swift-dictionary