如何在swift中从数组中获取一些数据?

时间:2017-08-27 14:42:29

标签: swift

这是我的问题:我有一个plist文件,它有一个简单的支柱: root对象是一个数组,数组中有2个部分,每个部分都是包含2对键值数据的字典:

enter image description here

我要创建一个tableView来显示数据,但我无法从数组中获取内容:

enter image description here 这是我如何声明我的dataArray:

var plistArray = [AnyObject]()

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

你需要在每个级别正确施放:

if let innerArray = plistArray[0] as? [AnyObject] {
    if let dataDic = innerArray[indexPath.row] as? [String:String] {
        if let imageName = dataDic["Pic"] {
            cell?.imageView?.image = UIImage(named: imageName)
        }
    }
}

但是当你知道plist包含什么时,你为什么要使用AnyObject?使用适当的类型。你知道它是一个包含字符串键和字符串值的字典数组。

var plistArray = [[[String:String]]]()

然后您只需要:

if let imageName = plistArray[0][indexPath.row]["Pic"] {
    cell?.imageView?.image = UIImage(named: imageName)
}