Swift在googleSignin之后执行segue

时间:2016-07-20 12:47:12

标签: swift xcode segue google-signin

我试图在GoogleSignindelegate之后调用API,它将检查现有用户是否会打开表单进行注册。这就是我所做的“

我定义了从当前控制器到目标控制器的push segue,并在此之后命名为login2,如果用户单击google signin按钮,我们将检查它是否存在于我们的数据库中:

func getGoogleData(let  uId:AnyObject, let emailId:AnyObject, let name:AnyObject){
        accountType = "GOOGLE"
        accountId = uId as! String
        self.emailId = emailId as! String
        self.name = name as! String
        print(accountId)
        print(accountType)
        self.appData.setValue(self.accountId, forKey: "uId")
        self.appData.setValue(self.accountType, forKey: "uAccountType")
        self.appData.synchronize()
        self.checkAlreadyExist()
    }

在异步后我们调用uiRefresh方法转到目标segue:

func do_ui_refresh(){
        dispatch_async(dispatch_get_main_queue(), {
            if(self.appData.stringForKey("userId") == nil){
                self.performSegueWithIdentifier("login2", sender: self)
            }
            else{
                self.performSegueWithIdentifier("loginAlready", sender: self)
            }
            return
        })
    }

但每当我运行app时,它都显示没有Receiver()没有带标识符'login2'的segue

但是我定义了一个segue,我可以在检查员中清楚地看到它。

Segue Image

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

好 在做了一些R& D后我发现实施有问题。我们不能在AppDelegate中执行segue操作因为没有加载视图所以如果我们想从AppDelegate打开一个视图 我们必须定义视图控制器ID,然后我们必须使用以下代码:

.POST

我们也可以在Open中实现这个东西,我们可以通过它来执行segue操作。