4

我正在开发一个 ios 应用程序,我是新手。所以,我收到了这个错误。我要做的是当用户第一次在应用程序上注册时,他们的用户名使用 NSUserdefault 本地存储在手机上。

现在,如果他们关闭应用程序并重新打开它,应用程序将通过第一个视图控制器并在 viewdidload 方法中检查 USUserdefault 的长度是否大于零,如果是,则通过执行 segue 调用进入主要活动。但是,当我运行它时出现该错误。

这就是我在故事板上所做的。 在此处输入图像描述

这是firstviewcontroller中的代码

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    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];

    }
}
4

1 回答 1

5

您所要做的就是将方法移动到 viewDidAppear:

-(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];

       }
}
于 2013-08-27T15:35:10.567 回答