Swift2从非主线程打开segue

时间:2016-01-02 15:46:22

标签: ios swift storyboard

我试图从非主线程中打开segue。

我从活动视图中的类调用静态方法,如下所示:

import Foundation

class Request
{
    static func callRequest(headers: [String: String]?, url: String, method: String, params: [String]?, view: UIViewController?, completion: AnyObject? -> ())
    {
        if notOnline() {
//            view!.performSegueWithIdentifier("internetErrorSegue", sender: view)
            dispatch_async(dispatch_get_main_queue()) {
                view!.performSegueWithIdentifier("internetErrorSegue", sender: view!)
            }
        }
   }
}

从我的ViewController,我正在调用这样的callRequest方法:

        Request.callRequest(
            nil,
            url: someUrl,
            method: "POST",
            params: sendingData,
            view: self) { json in
                // processing json response
                print(json)
            }) 
}

如果我没有互联网,应该打开一个segue internetErrorSegue。但实际情况是,它实际上是通过调用performSegueWithIdentfier并且没有任何反应的行 - 它仍然停留在应用程序中(就像按下按钮时一样)。

我正在使用2个两个视图控制器之间存在一个segue。

0 个答案:

没有答案