Ios 尝试登录或注册应用程序时出现Swift窗口层次结构错误?
我对窗口层次结构有疑问。当我尝试登录或注册并打开应用程序主页时,我无法显示其他页面。控制台错误提示: 警告:尝试显示其视图不在窗口层次结构中的对象 但当我用同一个用户重新打开我的应用程序时,一切都正常工作。下面是创建用户进程之后的代码:Ios 尝试登录或注册应用程序时出现Swift窗口层次结构错误?,ios,swift,xcode,window,Ios,Swift,Xcode,Window,我对窗口层次结构有疑问。当我尝试登录或注册并打开应用程序主页时,我无法显示其他页面。控制台错误提示: 警告:尝试显示其视图不在窗口层次结构中的对象 但当我用同一个用户重新打开我的应用程序时,一切都正常工作。下面是创建用户进程之后的代码: func createUser(withEmail email: String, password: String, username: String) { Auth.auth().createUser(withEmail: email, pa
func createUser(withEmail email: String, password: String, username: String) {
Auth.auth().createUser(withEmail: email, password: password) { (result, error) in
if let error = error {
print("Failed to sign user up with error: ", error.localizedDescription)
return
}
guard let uid = result?.user.uid else { return }
let values = ["E-mail": email, "Kullanıcı Adı": username]
Database.database().reference().child("users").child(uid).updateChildValues(values, withCompletionBlock: { (error, ref) in
if let error = error {
print("Failed to update database values with error: ", error.localizedDescription)
return
}
let layout = UICollectionViewFlowLayout()
let homeController = HomeController(collectionViewLayout: layout)
let navController = UINavigationController(rootViewController: homeController)
self.present(navController, animated: false, completion: nil)
})
}
}
这里是调用top函数的函数:
@objc func handleSignUp() {
guard let email = emailTextField.text else { return }
guard let password = passwordTextField.text else { return }
guard let username = usernameTextField.text else { return }
createUser(withEmail: email, password: password, username: username)
}
可能您的rootViewController正在呈现另一个ViewController。 您可以尝试:
if let presentedVC = self.presentedViewController {
presentedVC.present(navController, animated: false, completion: nil)
} else {
self.present(navController, animated: false, completion: nil)
}
你从哪里调用此代码?@mmr118我有一个注册按钮,该按钮下有此函数调用。你在哪里添加注册按钮??