从 TabBar 注销
Logout from TabBar
从 TabBar 注销的最佳方法是什么。我有一个应用程序,其中一个选项卡中有一个连续注销选项。当我选择这一行时,我想转到我的登录屏幕。如果您没有登录,该应用程序将启动登录屏幕;如果您已经登录杜松子酒,则该应用程序将启动主屏幕(是一个标签栏控制器)。我在 appDelegate 中管理它:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let defaults = NSUserDefaults.standardUserDefaults()
let notFisrtRun = defaults.boolForKey("notFirstRun")
// Chooses between login view and my list view if the user is already authenticated when the app is launched
if AuthToken.sharedInstance.isAuthenticated() && notFisrtRun {
let tabBarViewController = mainStoryboard.instantiateViewControllerWithIdentifier("TabBarViewController") as? UITabBarController
self.window?.rootViewController = tabBarViewController
} else {
let loginViewController = mainStoryboard.instantiateViewControllerWithIdentifier("LoginViewController") as? LoginViewController
self.window?.rootViewController = loginViewController
}
self.window?.makeKeyAndVisible()
return true
}
- 如果我尝试显示 segue 到我的登录屏幕,它会与导航栏和选项卡栏一起出现。
- 如果我尝试 unwind segue,它会在您尚未登录且应用程序以登录启动的情况下工作 screen.But 在应用程序以选项卡栏控制器启动的情况下,因为您已经登录登录,没用。
应用程序以模态方式显示登录屏幕是很正常的。注销后,呈现 loginViewController
模态 。如果用户重新登录,关闭 loginViewController
.
您还可以创建一个自定义 segue 来替换 rootViewController
,This question 可以帮助您开始。
从 TabBar 注销的最佳方法是什么。我有一个应用程序,其中一个选项卡中有一个连续注销选项。当我选择这一行时,我想转到我的登录屏幕。如果您没有登录,该应用程序将启动登录屏幕;如果您已经登录杜松子酒,则该应用程序将启动主屏幕(是一个标签栏控制器)。我在 appDelegate 中管理它:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
self.window = UIWindow(frame: UIScreen.mainScreen().bounds)
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let defaults = NSUserDefaults.standardUserDefaults()
let notFisrtRun = defaults.boolForKey("notFirstRun")
// Chooses between login view and my list view if the user is already authenticated when the app is launched
if AuthToken.sharedInstance.isAuthenticated() && notFisrtRun {
let tabBarViewController = mainStoryboard.instantiateViewControllerWithIdentifier("TabBarViewController") as? UITabBarController
self.window?.rootViewController = tabBarViewController
} else {
let loginViewController = mainStoryboard.instantiateViewControllerWithIdentifier("LoginViewController") as? LoginViewController
self.window?.rootViewController = loginViewController
}
self.window?.makeKeyAndVisible()
return true
}
- 如果我尝试显示 segue 到我的登录屏幕,它会与导航栏和选项卡栏一起出现。
- 如果我尝试 unwind segue,它会在您尚未登录且应用程序以登录启动的情况下工作 screen.But 在应用程序以选项卡栏控制器启动的情况下,因为您已经登录登录,没用。
应用程序以模态方式显示登录屏幕是很正常的。注销后,呈现 loginViewController
模态 。如果用户重新登录,关闭 loginViewController
.
您还可以创建一个自定义 segue 来替换 rootViewController
,This question 可以帮助您开始。