利用uinavigattion实现简单的登陆界面

登陆界面Controller:

我这里用到了自定义的LT视图, 不明白的可以翻到前面自定义视图的部分.

#pragma mark - 登陆实现
- (void)loginView {
    NSArray *labelArr = @[@"用户名", @"密码"];
    NSArray *textFielArr = @[@"输入用户名", @"输入密码"];
    for (int i = 0; i < 2; i ++) {
        _lt = [[WJQ_LTView alloc] initWithFrame:(CGRectMake(30, 150 + 80 * i, kScreenWidth - 120, 40))];
        _lt.textField.placeholder = textFielArr[i];
        _lt.label.text = labelArr[i];
        _lt.textField.delegate = self;
        _lt.textField.tag = i + 100;
        [self.view addSubview:_lt];
        [_lt release];
    }
    for (int i = 0; i < 2; i++) {
        NSArray *array = @[@"登陆", @"注册"];
        UIButton *button = [UIButton buttonWithType:(UIButtonTypeCustom)];
        [button setTitle:array[i] forState:(UIControlStateNormal)];
        [button setTitle:array[i] forState:(UIControlStateHighlighted)];
        [button setTitleColor:[UIColor colorWithRed:0.123 green:0.828 blue:1.000 alpha:1.000] forState:(UIControlStateNormal)];
        [button setTitleColor:[UIColor grayColor] forState:(UIControlStateHighlighted)];
        button.frame = CGRectMake(80 + i * 110, 300, 80, 40);
        button.tag = 200 + i;
        [button addTarget:self action:@selector(buttonClickOn:) forControlEvents:(UIControlEventTouchUpInside)];
        [self.view addSubview:button];
    }
}
//得到注册的数据
- (void)getMessage{
    /*
        取出数据的步骤:
        1. 创建对象
        2. 取出数据 用key取出对应数据
    */
    NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
    self.name = [userDefaults objectForKey:@"name"];

   // NSLog(@"%@", name);
    
    NSUserDefaults *pwdDefaults = [NSUserDefaults standardUserDefaults];
    self.pwd = [pwdDefaults objectForKey:@"pwd"];

}
// 点击按钮后做判断
- (void)buttonClickOn:(UIButton *)button {
    [self getMessage];
    UITextField *textField = (UITextField *)[self.view viewWithTag:100];
    UITextField *textField1 = (UITextField *)[self.view viewWithTag:101];
    if (button.tag == 200) {
        if ([textField.text isEqualToString:self.name] && [textField1.text isEqualToString:self.pwd]) {
            UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"提示" message:@"登陆成功" delegate:self cancelButtonTitle:nil otherButtonTitles:@"确认", nil];
            [alertView show];
            [alertView release];
        } else if ([_lt.textField.text isEqualToString:@""] && [_lt.textField.text isEqualToString:@""]) {
            UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"提示" message:@"请输入用户名或密码" delegate:self cancelButtonTitle:nil otherButtonTitles:@"确认", nil];
            [alertView show];
            [alertView release];
        } else {
            UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"提示" message:@"用户名或密码错误" delegate:self cancelButtonTitle:nil otherButtonTitles:@"确认", nil];
            [alertView show];
            [alertView release];
        }
    } else if (button.tag == 201) {
        enrollViewController *enView = [[enrollViewController alloc] init];
        [self.navigationController pushViewController:enView animated:YES];
    }
}
// 键盘回收(点击return 回收键盘)
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
    if (textField.tag == 100 && [textField isFirstResponder]) {
        UITextField *temp = (UITextField *)[self.view viewWithTag:101];
        [temp becomeFirstResponder];
    }
     else if (textField.tag == 101 && [textField isFirstResponder]) {
        [textField resignFirstResponder];
    }
    return YES;
    
}
// 点击空白处回收键盘
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    [self.view endEditing:YES];
}

注册界面的实现

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    [self saveMessage];
    [self enrollView];
    
    
    self.navigationItem.title = @"注册";
}
#pragma mark - 注册实现
- (void)enrollView {
    NSArray *textFieldArr = @[@"请输入用户名", @"请输入密码", @"请再次输入密码", @"请输入手机号", @"请输入邮箱"];
    NSArray *labelArr = @[@"用户名", @"密码", @"确认密码", @"手机号", @"邮箱"];
    for (int i = 0; i < 5; i++) {
        self.lt = [[WJQ_LTView alloc] initWithFrame:CGRectMake((kScreenWidth - 310)/2, 150 + (i * 60), 300, 50)];
        self.lt.textField.tag = i + 400;
        self.lt.label.tag = i + 300;
        if (i == 1 || i == 2) {
            self.lt.textField.secureTextEntry = YES;
        }
        self.lt.textField.delegate = self;
        self.lt.textField.placeholder = textFieldArr[i];
        self.lt.label.text = labelArr[i];
        [self.view addSubview:self.lt];
        [self.lt release];
    }
    UIBarButtonItem *rightBarButton = [[UIBarButtonItem alloc] initWithTitle:@"注册" style:(UIBarButtonItemStylePlain) target:self action:@selector(enrollButton:)];
    self.navigationItem.rightBarButtonItem = rightBarButton;
}
- (void)enrollButton:(UIBarButtonItem *)rightBarButtonItem {
    [self saveMessage];
    UITextField *textField = (UITextField *)[self.view viewWithTag:400];
    UITextField *textField1 = (UITextField *)[self.view viewWithTag:401];
    UITextField *textField2 = (UITextField *)[self.view viewWithTag:402];
    UITextField *textField3 = (UITextField *)[self.view viewWithTag:403];
    UITextField *textField4 = (UITextField *)[self.view viewWithTag:404];
    
    if ([textField.text isEqualToString:@""] || [textField1.text isEqualToString:@""] || [textField2.text isEqualToString:@""] || [textField3.text isEqualToString:@""] || [textField4.text isEqualToString:@""]) {
        UIAlertView *aView = [[UIAlertView alloc] initWithTitle:@"提示" message:@"输入信息不完全" delegate:self cancelButtonTitle:@"确认" otherButtonTitles:nil, nil];
        [aView show];
    } else if ([textField1.text isEqualToString:textField2.text] && ![textField.text isEqualToString:@""]) {
        UIAlertView *aView = [[UIAlertView alloc] initWithTitle:@"提示" message:@"注册成功" delegate:self cancelButtonTitle:@"确认" otherButtonTitles:nil, nil];
        [aView show];
    }
}
- (void)saveMessage {
    //保存数据的类
    //主要用于保存账号密码, 是一个超轻量级的持久化的类
    /*
        保存步骤
        1. 创建对象
        2. 保存数据, 是以字典类型进行保存
    */
    //用户名设置
    UITextField *textField = (UITextField *)[self.view viewWithTag:400];
    NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
    NSString *user = [NSString stringWithFormat:@"%@", textField.text];
    //保存内容
    [userDefaults setObject:user forKey:@"name"];
    
    //密码设置
    UITextField *textField1 = (UITextField *)[self.view viewWithTag:401];
    NSUserDefaults *pwdDefaults = [NSUserDefaults standardUserDefaults];
    NSString *pwd = [NSString stringWithFormat:@"%@", textField1.text];
    [pwdDefaults setObject:pwd forKey:@"pwd"];
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
    if (textField.tag == 400 && [textField isFirstResponder]) {
        UITextField *temp = (UITextField *)[self.view viewWithTag:401];
        [temp becomeFirstResponder];
    } else if (textField.tag == 401 && [textField isFirstResponder]) {
        UITextField *temp = (UITextField *)[self.view viewWithTag:402];
        [temp becomeFirstResponder];
    } else if (textField.tag == 402 && [textField isFirstResponder]) {
        UITextField *temp = (UITextField *)[self.view viewWithTag:403];
        [temp becomeFirstResponder];
    } else if (textField.tag == 403 && [textField isFirstResponder]) {
        UITextField *temp = (UITextField *)[self.view viewWithTag:404];
        [temp becomeFirstResponder];
    } else if (textField.tag == 404 && [textField isFirstResponder]) {
        [textField resignFirstResponder];
    } 
    return YES;
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    [self.view endEditing:YES];
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值