如何修复这个dictionaryValue

时间:2016-01-16 07:40:54

标签: swift alamofire swifty-json

Alamofire.request(.GET,  "https://maps.googleapis.com/maps/api/place/details/json", parameters:["placeid": x , "key":"AIzaSyAasdaXW-j8DIgGjY58_HdrasdaqqA"])
                .responseJSON { (responseData) -> Void in
                    //debugPrint(responseData)


                    switch responseData.result{

                    case .Success(let req):
                        let response = JSON(req)

                        let items = response["result"]["geometry"]["location"].dictionaryValue

                        let lat: Double = Double(items["lat"]!.doubleValue)
                        let lng: Double = Double(items["lng"]!.doubleValue)

                        print(lat,lng)



                        for item in items{


                        self.mapResult.append(mapModel(json:item)) // *THIS ERROR AS CANNOT CONVERT VALUE of TYPE '(STRING:JSON)' to EXPECTED ARGUMENT TYPE 'JSON'

                        }

                    case .Failure(let err):
                      print("Request failed with error: \(err)")
                    }
            }

1 个答案:

答案 0 :(得分:0)

你的items是一本字典,然后你必须像这样迭代:

for (key, value) in items {
}

这样您就可以将值传递给该函数,而不是将字典元素传递给它。您看到的错误告诉您在传递字典参数(String:JSON)时需要JSON参数。