JSON解析swift 3中从Array到字典的问题

时间:2016-06-03 07:40:13

标签: ios json swift swift3

我有一个JSON:

{
  "jsonData": {
    "userDetails": [
      {
        "user_id": "a",
        "first_name": "First1",
        "last_name": "Last1",
        "donation_amount": 841,
        "donation_time": 1452678347523
      },
      {
        "user_id": "b",
        "first_name": "First2",
        "last_name": "Last2",
        "donation_amount": 841,
        "donation_time": 1452678347523
      },
      {
        "user_id": "c",
        "first_name": "First3",
        "last_name": "Last3",
        "donation_amount": 841,
        "donation_time": 1452678347523
      }
    ]
  },
  "total_count": 3
}

我使用swiftlyJSON在swift中解析:我的代码在

之下
    private func processProjectDonorsResponse(response: JSON) {
     //add  to  dictionary
        let jsonObject = response.dictionaryObject!["jsonData"]! as AnyObject
        let details = jsonObject["userDetails"] as! [AnyObject]
        var tempModel = [UserModel]()
        for detail in details {
          let user = UserModel(response: detail as! [String: AnyObject])
          tempModel.append(user)
        }
}

它在swift 2中工作正常,但现在我升级到swift 3我在第//let details = jsonObject["userDetails"] as! [AnyObject]行收到警告 as:从String演员?!不相关的类型' [AnyObject]'总是失败,并且崩溃了。 如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

代码中的问题如下:

let jsonObject = response.dictionaryObject!["jsonData"]! as AnyObject

只需使用以下代码更改此代码:

let jsonObject = response.dictionaryObject!["jsonData"]! as! [String: AnyObject]

希望,这对你有用。