Я бы сделал вид входа в систему как модальный вид, который отображается только при необходимости.
Edit:
Это ОЧЕНЬ кратко: (я предполагаю, что вы используете ARC.)
В AppDelegate:
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController: mySecondViewController];
if (![self isUserLoggedIn]) {
MyLogInViewController *logInViewController = [[MyLogInViewController alloc] init];
[self presentModalViewController: MyLogInViewController animated: YES];
}
[[self window] setRootViewController: [self navigationController]];
и в logInViewController:
- (void)logInSuccessful {
[self dismissModalViewControllerAnimated: YES];
}