我試圖將數據從一個控制器傳遞到下一個控制器。該代碼是如下Swift 3在視圖控制器之間傳遞數據
首先視圖控制器:
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
let parameters: Parameters = [
"x": 2,
"y": 2
]
Alamofire.request(url, method: .post, parameters: parameters, encoding: URLEncoding.default).responseJSON { response in
if((response.result.value) != nil) {
let jsonVar: JSON = JSON(response.result.value ?? "success")
let destViewController : JSONResult = segue.destination as! JSONResult
let result = "\(jsonVar)"
destViewController.textLabel = result
print(result)
//self.jsonDisplayError.text = "\(jsonVar)"
} else {
self.jsonDisplayError.text = "no response"
}
}
}
第二視圖控制器:
@IBOutlet var jsonResult: UILabel!
var textLabel = String()
override func viewDidLoad() {
jsonResult.text = textLabel
}
結果被輸出到控制檯正確,但它不是在對標籤顯示第二視圖控制器頁面。
您是否在viewwillappaer上設置jsonResult.text時檢查它是否正常工作? – ocanal
我不知道如何做到這一點 – Dexstrum
[視圖控制器之間傳遞數據](http://stackoverflow.com/questions/5210535/passing-data-between-view-controllers)可能的重複。它的一些答案是專門針對Swift的。像[this](http://stackoverflow.com/a/31934786/5175709)一個 – Honey