2017-06-19 31 views
0

尝试获取存储在数组中的字典的值和密钥以填充两个UILabels。Swift 3 - 从字典数组中获取值

我的数组如下所示:

var fromLocations = [["marco" : "polo"],["jekyll" : "hide"],["freddy" : "jason"]] 

我得到一个集合视图的indexPath索引。目前尝试以下内容:

cell.locationName.text = fromLocations[indexPath.item].values[1] 

我试过了一堆其他的方法,但我不能钉它。

回答

1

这是你正在尝试做什么?

var fromLocations = [["marco" : "polo1"],["marco" : "polo2"],["marco" : "polo3"]] 
let marco = fromLocations[0]["marco"] 
print("marco = \(marco)") 

这会打印“polo1”。基本上你正在访问数组中的第一个字典。然后,按照通常访问字典的方式访问该字典。

所以一个向下突破是:

let fromLocations = [["marco" : "polo"],["marco" : "polo"],["marco" : "polo"]] 
let theDictionary = fromLocations[0] 
let value = theDictionary["marco"] 

为了刚刚得到的值与使用密钥(这是奇怪)数组,把值到一个数组。

var fromLocations = [["marco" : "polo1"],["marco" : "polo2"],["marco" : "polo3"]] 
let marco = Array(fromLocations[0].values)[0] 
print("marco = \(marco)") 

这将打印“polo1”

+0

类,我用占位符文本显示字典的数组 - 无论是马可和马球会在每一组不同。 – user7684436

+0

啊gotcha。如果您不需要字典密钥进行访问,为什么不使用字符串数组呢? – kailoon

+0

谢谢 - 我试图太聪明,我猜字符串数组会好的:) – user7684436