2

我想使用设置包从应用程序注销。注销从应用程序中的应用程序设置

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 

//enable_logout key for logout switch identifire in setting budle plist. 
     let userLogout = UserDefaults.standard.bool(forKey: "enabled_logout") 
     print(userLogout) 

      let userLogin = UserDefaults.standard.bool(forKey: "isUserLogin") 
      if userLogin { 

       let homeController = HomeController() 
       let homeNav = UINavigationController.init(rootViewController: homeController) 


       let aboutController = AboutController() 
       let aboutNav = UINavigationController.init(rootViewController: aboutController) 

       let userBaseController = UserBaseInfoController() 
       let userBaseNav = UINavigationController.init(rootViewController: userBaseController) 

       tabbarController.viewControllers =[homeNav,userBaseNav,aboutNav] 

       self.window?.rootViewController = tabbarController 

      } 
      else { 

       let login = LoginController() 
       self.window?.rootViewController = login 


      } 



     return true 
    } 

我加入的appDelegate这个代码,我想,当用户启用在设置注销开关,然后返回到应用程序显示登录视图,但是当使开关和回应用的appDelegate没有告诉我的钥匙不变。

还有就是我设置的观点: enter image description here

回答

0

我解决这个问题,而不是检查enable_logoutdidFinishLaunchingWithOptions方法,我在applicationWillEnterForeground方法检查。

这里是我的代码:

func applicationWillEnterForeground(_ application: UIApplication) { 

     let userLogout = UserDefaults.standard.bool(forKey: "enable_logout") 
     print(userLogout) 


     if !userLogout { 

      let homeController = HomeController() 
      let homeNav = UINavigationController.init(rootViewController: homeController) 


      let aboutController = AboutController() 
      let aboutNav = UINavigationController.init(rootViewController: aboutController) 

      let userBaseController = UserBaseInfoController() 
      let userBaseNav = UINavigationController.init(rootViewController: userBaseController) 

      tabbarController.viewControllers = [homeNav,userBaseNav,aboutNav] 

      self.window?.rootViewController = tabbarController 

     } 
     else { 

      let login = LoginController() 
      self.window?.rootViewController = login 

     } 

    } 
+0

喜你能在电报发送消息给我,我的伊朗,并需要你提前signalR ..thanks帮助...这是我的电报ID:mohammad_Z744 – 2017-04-24 18:57:47

+0

@ M_STRM74嗨,这是我的电子邮件地址,你可以问问题在这里:[email protected] – ava