ios登陆界面

代码较老,仅供参考

主要涉及的功能点有: 
1、密码输入框要隐藏输入字符,以黑点代替,有时候会在边上设置一个按钮,让用户选择是否需要密文输入 
2、Login时会检查输入框,若输入不合法,弹窗提示用户 
3、Reset会清空输入 
4、点击界面空白地方的时候,能够收起输入键盘,防止挡住用户点击登陆

5、弹出键盘要对输入框适配,来保证输入框不被键盘挡住

1、对于要隐藏输入的文本框,我们只需要把其secureTextEntry的属性设置为TRUE就行了:

Object-c代码  

self.password.secureTextEntry=TRUE;

2、Login功能会把用户输入保存到AppDelegate中,这样以后程序中需要的时候还可以取到:

-(IBAction)login:(id)sender{

NSString *userName = [self.userName.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

NSString *password = [self.password.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];

if(userName.length==0||password.length==0){

UIAlertView *alert= [[UIAlertView alloc] initWithTitle:@"Input invalid" message:@"UserName or Password is empty" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];

[alert show];

return;

}

[delegate.userState setObject:userName forKey:@"KUserName"];

[delegate.userState setObject:password forKey:@"KPassword"];

AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];

appDelegate.window.rootViewController = appDelegate.tabBar;

}

3、在Reset时,除了清空UI控件中的内容,还需要清空AppDelegate中的内容:

-(IBAction)reset:(id)sender{

self.userName.text=@"";

self.password.text=@"";

AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];

[delegate.userState setObject:@"" forKey:@"KUserName"];

[delegate.userState setObject:@"" forKey:@"KPassword"];

}

所有与UI空间绑定的方法都需要返回类型IBAction

上一篇:taro之React Native 端开发研究


下一篇:jenkins-Couldn't find any revision to build. Verify the repository and branch configuration for this job