立即在IOS中加载新视图

时间:2012-05-03 07:20:00

标签: objective-c ios viewcontroller

目前有一个小问题。

基本上我的appdelegate正在加载我的mainViewController:

self.viewController = [[MainViewController alloc] initWithNibName:@"mainViewController" bundle:nil];
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
return YES;

现在当mainViewController加载时,我想检查用户是否已经登录:

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
    NSInteger myInt = [prefs integerForKey:@"user"];
    if(!myInt)
    {
        self.loginViewController = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];
        self.loginViewController.delegate = self;
        self.loginViewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
        [self presentModalViewController:self.loginViewController animated:YES];
    }
}

它成功检查用户是否已登录,如果他们未登录则进入if语句。但是,在运行它之后,加载的最终视图是mainViewController,而不是loginViewController。

如果我有一个单独的按钮,使用此代码将我发送到登录页面,它可以正常工作。当然,这不是我需要的,我需要用户登录= p

1 个答案:

答案 0 :(得分:3)

将其放入-viewDidAppear: