//
// ViewController.m
// 10.22周考
//
// Created by 毅先森 on 2018/10/22.
// Copyright © 2018 刘毅. All rights reserved.
//
#import "ViewController.h"
#import <LocalAuthentication/LocalAuthentication.h>
#import "twoViewController.h"
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UIImageView *Imgv;
@property (weak, nonatomic) IBOutlet UITextField *Usertf;
@property (weak, nonatomic) IBOutlet UITextField *Passwordtf;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.Imgv.layer.masksToBounds = YES;
self.Imgv.layer.cornerRadius = 50;
}
- (IBAction)Btn:(id)sender {
if ([self.Usertf.text isEqualToString:@""] || [self.Passwordtf.text isEqualToString:@""]) {
UIAlertView *aler =[[UIAlertView alloc] initWithTitle:@"提示" message:@"账户、密码不能为空" delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
[aler show];
}else{
if ([self judgePassWordLegal:_Passwordtf.text]==YES) {
LAContext *authenticationContext = [[LAContext alloc]init];
NSError* error = [[NSError alloc]init];
BOOL isTouchIdAailable = [authenticationContext canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:nil];
if (isTouchIdAailable) {
NSLog(@"认证成功");
[authenticationContext evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"需要验证您的指纹来确认您的身份信息" reply:^(BOOL success, NSError * _Nullable error) {
if(success) {
dispatch_async(dispatch_get_main_queue(), ^{
twoViewController *sec =[[twoViewController alloc] init];
[self presentViewController:sec animated:YES completion:nil];
});
NSLog(@"恭喜,您通过了Touch ID指纹验证!");
}else{
NSLog(@"抱歉,您未通过了Touch ID指纹验证!");
}
}];
}else{
UIAlertController *alertvc =[UIAlertController alertControllerWithTitle:@"提示" message:@"不支持 touchID/fachID" preferredStyle:UIAlertControllerStyleAlert];
[alertvc addAction:[UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleCancel handler:nil]];
[self presentViewController:alertvc animated:YES completion:nil];
}
}else{
UIAlertView *aler =[[UIAlertView alloc] initWithTitle:@"提示" message:@"密码 格式不正确" delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
[aler show];
}
}
}
-(BOOL)judgePassWordLegal:(NSString *)_textfile{
BOOL result = false;
if ([_textfile length] >= 8){
// 判断长度大于8位后再接着判断是否同时包含数字和字符
NSString * regex = @"^[0-9A-Za-z]{4,16}$";
NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
result = [pred evaluateWithObject:_textfile];
}
return result;
}
@end
正则
最新推荐文章于 2022-12-08 22:35:44 发布