gpt4 book ai didi

ios - 未执行 Segue

转载 作者:行者123 更新时间:2023-11-28 12:07:21 25 4
gpt4 key购买 nike

在我的第一个 ViewController 中,我正在检查用户是否已经使用 Firebase 登录,如果他/她已经登录,则重定向到主切换面板,如果没有,则重定向到登录 View 。但是,欢迎 View 仅保留在 View 中,不会发生重定向。

import UIKit
import Firebase

class WelcomeVC: UIViewController {

@IBOutlet weak var btnLogin: RoundedShadowButton!

override func viewDidLoad() {
super.viewDidLoad()

if(Auth.auth().currentUser?.uid != nil) {
//user is logged in
performSegue(withIdentifier: "goToSwitchboardVC", sender: self)
}
else {
//user in not logged in
performSegue(withIdentifier: "goToLoginVC", sender: self)
}
}

@IBAction func btnLoginWasPressed(_ sender: Any) {
performSegue(withIdentifier: "goToLoginVC", sender: self)
}

}

代码已更改

import UIKit
import Firebase

class WelcomeVC: UIViewController {

@IBOutlet weak var btnLogin: RoundedShadowButton!

override func viewDidLoad() {
super.viewDidLoad()
}

override func viewWillAppear(_ animated: Bool) {
print("AUTH USER")
print(Auth.auth().currentUser)
print(Auth.auth().currentUser?.uid)

if(Auth.auth().currentUser?.uid != nil) {
//user is logged in
performSegue(withIdentifier: "goToSwitchboardVC", sender: self)
}
else {
//user in not logged in
performSegue(withIdentifier: "goToLoginVC", sender: self)
}
}

@IBAction func btnLoginWasPressed(_ sender: Any) {
performSegue(withIdentifier: "goToLoginVC", sender: self)
}

}

最佳答案

您的代码不会重定向到任何 View ,因为您已经在 viewWillAppear 中编写了它。在 View 出现之前无法执行 Segue所以你必须在 viewDidAppear 中执行 segue。如果其他一切都正确(segue 名称和连接)那么它肯定会工作。

试试这个-

override func viewDidAppear(_ animated: Bool) {
print("AUTH USER")
print(Auth.auth().currentUser)
print(Auth.auth().currentUser?.uid)

if(Auth.auth().currentUser?.uid != nil) {
//user is logged in
performSegue(withIdentifier: "goToSwitchboardVC", sender: self)
}
else {
//user in not logged in
performSegue(withIdentifier: "goToLoginVC", sender: self)
}
}

关于ios - 未执行 Segue,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49129117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com