如何检查我的用户是否已经登录,并使用 NSUserDefaults 转到特定的视图控制器

用户7853453
#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController
@synthesize User_Name,Password,Login_Label,Register_Label;

- (void)viewDidLoad
{

[super viewDidLoad];


NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

if (![defaults boolForKey:@"Registered"])
{

    NSLog(@"No User registered");


    // Login_Label.hidden = YES;



}else
{

    NSLog(@"User Registered");

    //Register_Label.hidden = YES;

    [self performSegueWithIdentifier:@"LoggedInPage" sender:self];

}



// Do any additional setup after loading the view, typically from a nib.

}



- (void)didReceiveMemoryWarning {

[super didReceiveMemoryWarning];

// Dispose of any resources that can be recreated.

}



- (IBAction)LogIn_Button:(id)sender {

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

if ([User_Name.text isEqualToString: [defaults objectForKey:@"userName"] ] && [Password.text isEqualToString: [defaults objectForKey:@"password"]])

{

    User_Name.text = nil;

    Password.text = nil;

    [self performSegueWithIdentifier:@"LoggedInPage" sender:NULL];


}else
{

    UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"OOPS" message:@"Username or Password is in correct" preferredStyle:UIAlertControllerStyleAlert];


    UIAlertAction *action = [UIAlertAction actionWithTitle:@"ok" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action)

                             {

                                 //[self dismissViewControllerAnimated:YES completion:Nil];

                             }];

    [alert addAction:action];

    [self presentViewController:alert animated:YES completion:Nil];

}


}


- (IBAction)Register:(id)sender {


if ([User_Name.text isEqualToString:@""] || [Password.text isEqualToString:@""])
{

    UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"OOPS" message:@"You must complete all fields" preferredStyle:UIAlertControllerStyleAlert];

    UIAlertAction *action = [UIAlertAction actionWithTitle:@"ok" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action)

                             {

                                 [self dismissViewControllerAnimated:YES completion:Nil];

                             }];

    [alert addAction:action];

    [self presentViewController:alert animated:YES completion:Nil];

} else
{


    //[self NewRegisterUser];


}


[self performSegueWithIdentifier:@"RegisterationPage" sender:self];

}



-(void) NewRegisterUser{

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];


[defaults setObject:User_Name.text forKey:@"userName"];


[defaults setObject:Password.text forKey:@"password"];


[defaults setBool:YES forKey:@"Registered"];


[defaults synchronize];


UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"Success" message:@"You have registerd a new user" preferredStyle:UIAlertControllerStyleAlert];

UIAlertAction *action = [UIAlertAction actionWithTitle:@"Done" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action)

                         {

                             [self dismissViewControllerAnimated:YES completion:Nil];

                             [self performSegueWithIdentifier:@"LoggedInPage" sender:self];



                         }];

[alert addAction:action];

[self presentViewController:alert animated:YES completion:Nil];


//[self performSegueWithIdentifier:@"LoggedInPage" sender:self];


}



@end
什_汗

给每个 Vc 一个故事板标识符并执行此操作

 NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
 UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];

 if ([defaults boolForKey:@"LoggedIn"]) 
 {    
     UIViewController*vc = [storyboard instantiateViewControllerWithIdentifier:@"homeID"];
     UINavigationController*nav = [[UINavigationController alloc] initWithRootViewController:vc];
     self.window.rootViewController = nav

  }else
  {

     UIViewController*vc = [storyboard instantiateViewControllerWithIdentifier:@"loginID"];
     UINavigationController*nav = [[UINavigationController alloc] initWithRootViewController:vc];
     self.window.rootViewController = nav
  }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用NSUserDefaults从其他视图控制器更新标签

来自分类Dev

如何检查我的用户是否已经登录(会话)并转到特定的ViewController?

来自分类Dev

如何加载所有视图控制器故事板,但跳过自然序列并直接转到特定视图?

来自分类Dev

短暂超时后,如何转到新的视图控制器?

来自分类Dev

如何从更多 tabBarController 转到子视图控制器?

来自分类Dev

在显示视图之前检查NSUserDefaults

来自分类Dev

如何从表视图控制器转到详细信息控制器然后返回

来自分类Dev

如何从表视图控制器转到详细信息控制器然后返回

来自分类Dev

我转到视图控制器的子级并返回到以前的视图控制器后,SWRevealViewController无法正常工作

来自分类Dev

测验应用程序:使用NSUserDefaults保存选定的测验问题并将其显示在另一个视图控制器中

来自分类Dev

使用NSUSERDEFAULTS

来自分类Dev

如何使用导航栏项转到其他视图控制器?

来自分类Dev

为特定的用户名添加NSUserDefaults

来自分类Dev

如何禁用导航控制器(Swift)中特定视图控制器的自动旋转?

来自分类Dev

如何使后退按钮始终转到上一个视图控制器

来自分类Dev

如何使后退按钮始终转到上一个视图控制器

来自分类Dev

如何快速转到最后一页上的不同视图控制器?

来自分类Dev

如何从另一个视图跳转到连接到选项卡栏控制器的某个视图?

来自分类Dev

如何跳过登录视图控制器?

来自分类Dev

检查用户是否已打开每个视图控制器

来自分类Dev

如何检查特定用户是否使用unix登录?

来自分类Dev

如何检查特定用户是否使用unix登录?

来自分类Dev

NSUserDefaults 检查键值是否存在

来自分类Dev

是否可以在多个视图中读取存储在NSUserDefaults中的值

来自分类Dev

如何检查导航控制器是否被按下或是根视图控制器?

来自分类Dev

使用NSUserDefaults保存高分

来自分类Dev

使用NSUserDefaults保存数据

来自分类Dev

使用NSUserDefaults更改TintColor

来自分类Dev

在阵列上使用NSUserDefaults

Related 相关文章

  1. 1

    如何使用NSUserDefaults从其他视图控制器更新标签

  2. 2

    如何检查我的用户是否已经登录(会话)并转到特定的ViewController?

  3. 3

    如何加载所有视图控制器故事板,但跳过自然序列并直接转到特定视图?

  4. 4

    短暂超时后,如何转到新的视图控制器?

  5. 5

    如何从更多 tabBarController 转到子视图控制器?

  6. 6

    在显示视图之前检查NSUserDefaults

  7. 7

    如何从表视图控制器转到详细信息控制器然后返回

  8. 8

    如何从表视图控制器转到详细信息控制器然后返回

  9. 9

    我转到视图控制器的子级并返回到以前的视图控制器后,SWRevealViewController无法正常工作

  10. 10

    测验应用程序:使用NSUserDefaults保存选定的测验问题并将其显示在另一个视图控制器中

  11. 11

    使用NSUSERDEFAULTS

  12. 12

    如何使用导航栏项转到其他视图控制器?

  13. 13

    为特定的用户名添加NSUserDefaults

  14. 14

    如何禁用导航控制器(Swift)中特定视图控制器的自动旋转?

  15. 15

    如何使后退按钮始终转到上一个视图控制器

  16. 16

    如何使后退按钮始终转到上一个视图控制器

  17. 17

    如何快速转到最后一页上的不同视图控制器?

  18. 18

    如何从另一个视图跳转到连接到选项卡栏控制器的某个视图?

  19. 19

    如何跳过登录视图控制器?

  20. 20

    检查用户是否已打开每个视图控制器

  21. 21

    如何检查特定用户是否使用unix登录?

  22. 22

    如何检查特定用户是否使用unix登录?

  23. 23

    NSUserDefaults 检查键值是否存在

  24. 24

    是否可以在多个视图中读取存储在NSUserDefaults中的值

  25. 25

    如何检查导航控制器是否被按下或是根视图控制器?

  26. 26

    使用NSUserDefaults保存高分

  27. 27

    使用NSUserDefaults保存数据

  28. 28

    使用NSUserDefaults更改TintColor

  29. 29

    在阵列上使用NSUserDefaults

热门标签

归档