我正在尝试使用use self.performSegueWithIdentifier
在远程加载JSON文件时更改Storyboard上的视图。为此,我使用的是Swift Class" Agent"执行HTTP请求。当我写
self.performSegueWithIdentifier("toView2", sender: self)
完成"完成"变量。为什么不起作用?我想这与"发件人:自我"有关。但我不知道如何解决这个问题。我在Xcode上没有任何错误。它只是从我的服务器加载数据然后没有任何反应......
@IBAction func goToView2(sender: AnyObject) {
let done = { (response: NSHTTPURLResponse!, data: Agent.Data!, error: NSError!) -> Void in
self.namesJSON = JSONValue(data!)
self.performSegueWithIdentifier("toView2", sender: self)
};
Agent.post("http://api.example.com/test.php", headers: [ "Header": "Value" ],
data: [ "test": "ok" ], done: done)
}
答案 0 :(得分:30)
编辑:(我在第一时间的回答略有不同)
基本上,问题是您已进入旁队列
只需获取主队列并在其中调用segue,它就可以正常工作。
dispatch_async(dispatch_get_main_queue()) {
self.performSegueWithIdentifier("toView2", sender: self)
}
希望它有效