我正在使用Storyboard构建一个iOS应用程序。根视图控制器是一个标签栏控制器。我正在创建登录/注销过程,它基本上工作正常,但我有一些问题。我需要知道最好的方法来设置这一切。
我想做到以下几点:
到目前为止,我所做的是将根视图控制器设置为标签栏控制器,并创建了一个自定义segue到Login视图控制器。在我的标签栏控制器类中,我检查它们是否在viewDidAppear方法中登录,并执行segue: [self performSegueWithIdentifier:@"pushLogin" sender:self];
我还设置了一个通知,用于何时需要执行注销操作:[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(logoutAccount) name:@"logoutAccount" object:nil];
注销后,我从Keychain中清除凭据,运行[self setSelectedIndex:0]并执行segue来再次显示登录视图控制器。
这一切都很好,但我想知道:这个逻辑应该在AppDelegate中吗?我也有两个问题:
viewWillAppear,但segue不会那么早工作。我愿意重新修改。我考虑过让登录屏幕成为根视图控制器,或者在AppDelegate中创建一个导航控制器来处理所有事情…我只是不确定目前最好的方法是什么。