我正在尝试将词典键值添加到我的 TableView 中。数据源是 plist 。
plist的设置如下:不幸的是,我无法发布图片。
Root = Array
Item 0 = Dictionary
modelName = "SomeName"
modelType = "SomeType"
Item 1 = Dictionary (similar key : values)
Item 2 = Dictionary
Item 3 = Dictionary
所以它基本上是一个字典数组。我想迭代数组并使用" modelName"我的TableView标签中的值。
当我使用println
时,我可以获取要打印的单个Array对象if let path = NSBundle.mainBundle().pathForResource("models", ofType: "plist") {
if let array = NSArray(contentsOfFile: path) {
self.tableData = array
println(self.tableData[0])
}
}
但我想转换我的数据并调用特定的键值以在我的 tableView 中使用。我试图为我的plist中的每个项目创建一个Dictionary
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as DataSheetTableViewCell
var dict = NSDictionary(objectsAndKeys: self.tableData[indexPath.row])
cell.titleLabel.text = dict["modelName"] as? String
return cell
}
我对如何创建我的plist Dictionary感到有点困惑。谢谢。
答案 0 :(得分:0)
如果你的plist是一个字典数组,那么单个字典只是你使用objectAtIndex得到的数组元素之一:(或者它使用下标语法等效)。你只需要将它转换为字典,而不是创建一个新的字典,这是dictionaryWithObjectsAndKeys所做的。
var dict = self.tableData [indexPath.row] as NSDictionary