Swift编译时报错:Command failed due to signal: Segmentation fault: 11

Command failed due to signal: Segmentation fault: 11
在网络请求完,解析的时候遇到这个问题:

Alamofire.request(.GET, "http://api.budejie.com/api/api_open.php", parameters: ["a":"newlist", "c":"data", "type":1]).responseJSON() { response in

        let json = JSON(response.result.value!)
        arr = json["list"].arrayObject!
        DRLog(arr)
        self.tableView.reloadData()
      }

⭐️这时候我们在控制台上看到的确实是arr是一个数组形式,里面有多个NSDictionary形式,但是如果我们直接这个用:arr[index][“text”]是错误的。必须先将arr中的每个类似NSDictionary形式转换成NSDictionary:

let dic = arr[index] as! NSDictionary
let text = dic["text"] as? String

如果在其他地方碰到,也要检查字典或者数组的形式是否正确

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章