我在 swift3 中有一个函数,它获取批准的变量并检查它是否为真。如果它是真的那么它会显示一个警报,但如果它不是真的,那么当它应该显示批准被拒绝的警报时什么也没有发生。当我尝试用简单的 print() 替换警报时,它甚至不会打印任何内容
可能是什么问题?
@IBAction func approveuser(_ sender: AnyObject) {
theplace = place //Saving variable.
DispatchQueue.main.async {
if(self.place == ""){
self.place = self.pickerData[0]
}
//BEGIN CHECK.
Alamofire.request("https://example.com/api.php?appvar=\(appvar)&requested=\(self.place)").responseJSON{ (response) -> Void in
if let JSON = response.result.value{
let json = JSON as! NSDictionary
Approved = json["Approved"] as! String
let version = json["version"] as! String
if(version != AppVersion){
self.showalert("Update Required", message: "A new version is available. Please update!", confirm: "Okay")
return
}
if(Approved == "true"){
theurl = json["URL"] as! String //Give the URL.
self.showalert("Approved!", message: "Approved", confirm: "Okay")
}else{
self.showalert("Denied!", message: "Denied", confirm: "Okay")
}
}
}
}
}
最佳答案
在这一行之后
Approved = json["Approved"] as! String
打印已批准
print(Approved)
确保它打印 true 或 false 确保它不打印 optional(true) 或 optional(false)
升级到 Swift 3 后的 json 响应返回许多可选值,即使从 Swift 2 升级后您没有更改代码中的任何内容
关于swift - if else 在 swift3 中不返回任何东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39582692/