iOS Swift故事板如何在登录后和登录前显示视图

ken*_*nvu 2 iphone xcode login storyboard swift

我是Swift&Storyboard的新手。我正在构建一个应用程序,该应用程序需要在用户成功登录后保持登录状态。因此,第一次用户打开应用程序时,我将显示Login ViewController,而在用户登录后,该应用程序将显示Home ViewController。

对于Objective-C和xib,我只是将用户登录数据保存到数据库中,每次用户打开应用程序时,我都会检查AppDelegate中是否存在用户数据,如果存在,则显示HomeVC.xib,否则显示LoginVC.xib 。这是正确的方法吗?

我如何使用Storyboard做到这一点?

谢谢

3li*_*3li 5

您可以通过编程方式设置初始视图控制器,方法是从第一个视图控制器中取消选中“是初始视图控制器”选项,例如,或者简单地删除指向第一个视图控制器的箭头。然后给所有的视图控制器要作为初始视图控制器不同的故事板ID,就像那个

然后在AppDelegate类的application:didFinishLaunchingWithOptions方法中手动将适当的视图控制器设置为初始视图控制器:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    // Override point for customization after application launch.
    window = UIWindow(frame: UIScreen.mainScreen().bounds)
    let storyboard = UIStoryboard(name: "Main", bundle: nil)
    window?.rootViewController = storyboard.instantiateViewControllerWithIdentifier((isUserLoggedIn ? "MainVC" : "LoginVC"))
    window?.makeKeyAndVisible()
    return true
}
Run Code Online (Sandbox Code Playgroud)