Если вы всегда хотите, чтобы приложение запускалось в тот же UIViewController, вам необходимо установить RootViewController вашего приложения. Вы можете сделать это в Interface Builder, установив флажок, который говорит «Является ли Initial View Controller»
или в (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
метода вы можете установить RootViewController в
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//...
self.window.rootViewController = [self.window.rootViewController.storyboard instantiateViewControllerWithIdentifier:@"MyLoginViewControllerStoryboardID"];
return YES;
}
Обратите внимание, что вам то необходимо установить идентификатор раскадровки должным образом в Interface Builder. Это
Кроме того, на стороне записки, если вы хотите, чтобы показать LoginViewControllerтолько если пользователь в настоящее время не входа в систему Вы можете сделать что-то вроде этого
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
BOOL isLoggedIn = [[NSUserDefaults standardDefaults] boolForKey:@"IsLoggedIn"];
NSString *rootStoryboardID;
if(isLoggedIn) {
rootStoryboardID = @"LoginViewControllerStoryboardID";
} else {
rootStoryboardID = @"MainViewControllerStoryboardID";
}
self.window.rootViewController = [self.window.rootViewController.storyboard instantiateViewControllerWithIdentifier:rootStoryboardID];
return YES;
}
Надеюсь, это поможет!