gpt4 book ai didi

ios - Swift - 将来自 API 的数据传递到另一个 View Controller

转载 作者:行者123 更新时间:2023-11-30 12:48:01 25 4
gpt4 key购买 nike

请检查以下代码:

 @IBAction func sendActivationCode(_ sender: UIButton) {
service.Register(phoneNumber: self.mobileNumberTxt.text!, callback: { (response) in
self.setCustomerValues(response: response)
})
}

func setCustomerValues(response: [String:Any]) {
registrationToken = (response["token"]! as! String)
code = response["code"] as! Int
}

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "toStep2" {
let vc = segue.destination as! Step2ViewController
vc.registrationToken = registrationToken
}
}

问题是:prepare函数在setCustomerValues之前执行,并且我无法在Step2ViewController.swift中使用registrationToken变量> 因为它是零。

最佳答案

不要将 Segue 从按钮连接到 Step2ViewController,而是从 View Controller 连接。这样,当触摸按钮时,segue 就不会自动执行。

然后从 setCustomerValues 回调中调用 PerformSegue,以在获取注册 token 后显式执行 segue。请注意,如果回调不在主线程上,则需要在调用performSegue 之前将dispatch_async 到主线程。

关于ios - Swift - 将来自 API 的数据传递到另一个 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41374069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com