【问题标题】:Swift performSegue not executing [duplicate]Swift performSegue 未执行 [重复]
【发布时间】:2020-08-04 13:48:39
【问题描述】:

我正在尝试检查用户之前是否登录过,如果有,则将其发送到主屏幕。正在满足条件(正在执行打印)但未执行 segue。函数调用在 viewDidLoad() 中。

我对登录的用户使用完全相同的 segue 语句,它可以工作。

    func checkIfSignedInAlready() {
        //check if user has signed in already
        if UserDefaults.standard.string(forKey: "appleAuthorizedUserIdKey") != nil {
                // move to main view
            print("USER HAS SIGNED IN BEFORE")
            performSegue(withIdentifier: "LogIn", sender: nil)
        }
    }

【问题讨论】:

    标签: swift authentication


    【解决方案1】:

    更新 - 在 Apple Docs 中找到:

    “当前视图控制器一定是从storyboard加载的。如果它的storyboard属性为nil,可能是因为你自己分配和初始化了view controller,这个方法会抛出异常。”

    所以我将函数调用放在 viewDidAppear() 中,它可以工作,但由于某种原因以模态方式呈现。故事板中的“种类”设置为“显示”。对此有什么想法吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-22
      • 2013-08-30
      • 1970-01-01
      • 2021-10-31
      • 1970-01-01
      • 1970-01-01
      • 2021-07-29
      • 1970-01-01
      相关资源
      最近更新 更多