2

我的应用程序有一个注册屏幕。然后它会进入登录屏幕。我希望当我重新启动应用程序注册屏幕时不会出现。它应该直接打开登录视图。我该怎么做?

4

3 回答 3

2

您可以通过以下步骤执行此操作:

1 - 当用户成功注册时,您应该在全局变量中设置一个字符串值并使用 NSUserDefaults 保存它。就像 :

// After user successfully signs up..

NSString *userSignUp = @"someValue"; // set it as a global variable....
[[NSUserDefaults standardUserDefaults]
    setObject:valueToSave forKey:@"signUpDone"];

2 - 然后在你的 appDelegate.m 类中放置一个条件。在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法内部,只需从用户注册时存储的 NSUserDefaults 中检索该值。然后根据检索到的值,设置您的根视图控制器。就像

userSignUp = [[NSUserDefaults standardUserDefaults]
    stringForKey:@"SignUpDone"];

if([userSignUp isEqualToString:@"someValue"])
{
  // set Home screen as your root view controller...
}
else
{
  // set Sign Up screen as your root view controller..
}
于 2013-10-17T08:52:46.247 回答
1

我不太确定你的目标是什么。

也许您应该尝试使用NSUserDefaults来存储您的应用程序已经启动:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setBool:YES forKey:@"alreadyLaunchedApp"];

然后,在启动时,您只需要检查布尔值并显示正确的视图:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
BOOL alreadyLaunchedApp = [default boolForKey:@"alreadyLaunchedApp"]
于 2013-10-17T08:52:37.277 回答
0

用于NSUserDefaults跟踪该应用程序是第一次启动还是第二次启动,并根据状态重定向它们。

于 2013-10-17T08:45:12.017 回答