gpt4 book ai didi

ios - 注销和登录屏幕变黑后

转载 作者:行者123 更新时间:2023-11-28 05:46:16 24 4
gpt4 key购买 nike

我使用用户默认值来存储登录和注销信息,注销后当我再次登录时,用户界面改变,我尝试了不同的解决方案,但没有得到任何合适的解决方案。

我尝试使用 if else 语句。如果条件为真,则显示主屏幕,否则显示登录屏幕。下面是我的代码

对于我使用的登录:

@IBAction func signInAction(_ sender: Any) {
defaults.set(true, forKey: "status")
}

对于我使用的注销:

@IBAction func logOutAction(_ sender: Any) {
defaults.set(false, forKey: "status")
defaults.synchronize()

dismiss(animated: true, completion: nil)
let loginVC = self.storyboard?.instantiateViewController(withIdentifier: "ViewController") as! ViewController
self.present(loginVC)
let appDel: AppDelegate = UIApplication.shared.delegate as! AppDelegate
appDel.window?.rootViewController = loginVC
}

在 AppDelegate.swift 中我使用了:

if(status == true){
let appDel = UIApplication.shared.delegate as! AppDelegate

let mainVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "DrawerTabsController") as! DrawerTabsController

let menuVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "DrawerViews") as! DrawerViews

let navigationController = UINavigationController(rootViewController: mainVC)
appDel.drawerController.screenEdgePanGestureEnabled = true

appDel.drawerController.mainViewController = mainVC
appDel.drawerController.drawerViewController = menuVC

appDel.window?.rootViewController = appDel.drawerController
appDel.window?.makeKeyAndVisible()
} else {
let rootVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "ViewController") as! ViewController

//ViewController is LoginVC

let appDelegate = UIApplication.shared.delegate as! AppDelegate
appDelegate.window?.rootViewController = rootVC
}

导航栏 UI 更改。

enter image description here

最佳答案

这个答案不适用于您的代码,我只是分享了我在整个 iOS 应用程序中使用的流程。这就像一个魔术。

我认为您需要更改您的应用流程。

首先打开您的仪表板屏幕,在仪表板屏幕中使用 viewDidAppear 方法检查登录状态,并显示带有导航的登录屏幕(如果您想从登录屏幕导航注册屏幕或忘记密码屏幕,则导航)。

在登录屏幕中。在调用 api 并获得成功登录状态后,只需关闭登录屏幕(如果您显示导航,则只需关闭导航 Controller )。

在此流程中不需要更改您的 Root View Controller ,流程非常简单。

关于ios - 注销和登录屏幕变黑后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54683938/

24 4 0
文章推荐: javascript - React 中