我创建了两个视图,然后通过ctrl-dragging并创建一个segue将一个视图连接到另一个视图。给这个segue标识符“functionOutput1”
然后我创建了一个函数,并根据函数中的某个输出以编程方式触发了上面创建的segue。
performSegue(withIdentifier: "functionOuput1", sender: self)
视图分段正常,但视图内容直到一分钟后才会出现。
我还需要做些什么吗?
编辑: 我在URLRequest的回调函数中执行此segue
let task = session.dataTask(with: request as URLRequest, completionHandler: {
data, response, error -> Void in
if (error != nil) {
// there is an error with the request
print("error: ", error)
} else {
// Request was successful. Check the contents of the response.
print("response: ", response)
let httpResponse = response as! HTTPURLResponse
if httpResponse.statusCode != 200 {
print("problems with server request")
} else {
print("request successful")
//go to next page
performSegue(withIdentifier: "functionOuput1", sender: self)
}
}
})
答案 0 :(得分:1)
这可能是一个线程问题。因为数据是异步返回的。您需要在主线程上运行视图更新。您可以使用以下代码使用Swift 3.0执行此操作:
DispatchQueue.main.async {
// Your view updates here
}