我需要处理两件事
1)如果用户未登录我的应用程序,我需要显示LoginVC,然后显示passwordVC和VC3 ..
2)如果用户已经登录我需要显示密码VC然后显示VC3
对于方案 2 我已经用VC3创建了一个导航控制器,我为新创建的导航控制器提供了标识符。现在我又创建了一个 passwordVC 在第二种情况下提出。在VC3上显示新创建的密码屏幕。输入正确的密码后,我需要关闭新创建的 PasswordVC 并显示VC3。
我完成了1 St场景。我只是检查钥匙串,我离开了,因为我正在使用带导航控制器的LoginVC作为初始视图控制器。这是我的代码为1场景
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
KeychainItemWrapper *keyChain = [[KeychainItemWrapper alloc]initWithIdentifier:@"Login" accessGroup:nil];
NSString *str = [keyChain objectForKey:(__bridge id)(kSecAttrAccount)];
if (str.length == 0) {
//here i have commented those lines becausee i having initial view controller as navigation controller in my storyboard.
// self.window.rootViewController.storyboard;
// CognitoHomeViewController *Login = [[UIStoryboard storyboardWithName:@"Main" bundle:nil]instantiateViewControllerWithIdentifier:@"LoginVC"];
//[self.window setRootViewController:Login];
}
else{
PasscodePinViewController *PasscodePinViewController=[[PasscodePinViewController alloc]initWithNibName:@"PasscodePinViewController" bundle:nil];
[self presentviewcontroller:PasscodePinViewController];}
我还需要改变...... 对于第二种情况,我创建了导航控制器和新的PasswordVC。我正在使用钥匙串管理我的app委托中的2个场景。如果在钥匙串上存在用户名,我需要做第二个场景,如果不是第一个场景。
问题是我不知道如何在app delegateclass中执行第二个场景。请帮我这样做......
答案 0 :(得分:0)
您根本不必在AppDelegate中执行此操作。创建一个WelcomeVC并使其成为根控制器并检查用户是否登录到欢迎VC中,并且您可以根据条件转到loginVC或passwordVC。