Swift - prepareForSegue被调用但视图控制器没有显示

时间:2017-08-01 04:56:06

标签: ios swift swift3 segue uistoryboardsegue

我有两个ViewControllers。一个用于登录,一个用于下一页。登录在我的服务器完成。一旦用户输入正确的用户名和密码,它将转到下一页。它对我有用。第一次用户必须输入用户名和密码。成功尝试一次后,我将用户名和密码保存在UserDefaults中,然后使用它自动登录。这种方法对我有用。过了一段时间后,我不知道登录后未显示的下一页发生了什么。我检查了prepareForSegue并且它被调用了,我打印了segue标识符。全部正确。但是下一个视图控制器没有显示。我在viewDidAppear中使用以下代码自动登录。

if pref.string(forKey: "username") != nil && pref.string(forKey: "password") != nil {
        let user = self.pref.string(forKey: "username")
        let pass = self.pref.string(forKey: "password")
        self.eUser.text = user
        self.ePass.text = pass
        login_account()
    }

成功登录后,我使用以下代码performSegue

if response == "Invalid credentials" {
        DispatchQueue.main.async(execute: {
            NVActivityIndicatorPresenter.sharedInstance.stopAnimating()
            self.show_alert(response)
        })
    } else {
        DispatchQueue.main.async(execute: {
            NVActivityIndicatorPresenter.sharedInstance.stopAnimating()
            self.saveCredentials(username: user, password: pass)
            self.performSegue(withIdentifier: "test_segue", sender: self)
        })
    }

有时会工作,有时甚至无法工作。

发生这种情况时,登录页面上的按钮和文本字段不可触摸。

0 个答案:

没有答案