问题描述
我是SWIFT和应用程序开发的新手,我正在努力让我着迷于闭包。
我正在使用Alamofire和SwiftyJSON。我已经读了很多关于它的文章,但是我仍然不知道如何解决问题。
我首先拥有完成处理程序闭包的代码块
func SendGeocodeRequest(query:String,completionHandler: @escaping (Float)-> Void) {
var ltd:Float = 1.0
AF.request(query).responseJSON { response in
switch response.result {
case .success(let value):
let json=JSON(value)
ltd = json["results"][0]["geometry"]["location"]["lat"].floatValue
completionHandler(ltd)
case .failure(let error):
print(error)
}
}
}
然后我正在调用该函数:
SendGeocodeRequest(query: query_origin) { ltd in
print("ltd value is \(ltd)")
}
我从打印声明中调用的google API中获得了宽容。
我的问题如下:如何代替print语句,如何将该值存储在变量中并在函数外部使用它?由于该函数具有void返回类型,因此我看不到如何执行此操作。 我希望能够将SendGeocodeRequest函数中的纬度值分配给一个变量,以便以后可以在我的代码中使用[为了更清晰而编辑]
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)