在当前视图控制器出现之前到达另一个视图控制器

Mic*_*ana 6 ios

我试图在当前视图控制器出现之前转到新的视图控制器,但似乎无法得到它.基本上我的应用程序,在启动页面上启动并检查是否有已保存的NSUserDefaults,如果是,则打开主视图控制器.但是,我不希望用户在看到主视图之前看到该视图,因为它们已经是用户,但它不是用户友好的.我希望当前用户直接查看启动图像,然后查看主视图.但是,我无法真正做到这一点.这就是我所做的,它会产生不良影响.

- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults]; NSString *user = [prefs stringForKey:@"userName"];

if(user.length>0){
    NSLog(@"Going straight to main %s", "Yes");
    [self performSegueWithIdentifier:@"startMain" sender:self];

  }
}
Run Code Online (Sandbox Code Playgroud)

我怎么解决这个问题?

Raj*_*jiv -3

在你的 appDelegate 中试试这个

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{

    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults]; NSString *user = [prefs stringForKey:@"userName"];
    if(user.length>0){
        NSLog(@"Going straight to main %s", "Yes");
        [self performSegueWithIdentifier:@"startMain" sender:self];

    } else {
        self.window.rootViewController = splashScreenViewController;
    }
}
Run Code Online (Sandbox Code Playgroud)