我想制作一个用户登录表单,它需要使用电子邮件而不仅仅是用户名。如果不是电子邮件,有什么方法可以弹出警报吗?顺便说一句,所有这些都在 xcode 中。
最佳答案
有一种方法可以使用 NSPredicate和 regular expression :
- (BOOL)validateEmail:(NSString *)emailStr {
NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
return [emailTest evaluateWithObject:emailStr];
}
然后,如果电子邮件地址错误,您可以显示警报:
- (void)checkEmailAndDisplayAlert {
if(![self validateEmail:[aTextField text]]) {
// user entered invalid email address
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error" message:@"Enter a valid email address." delegate:self cancelButtonTitle:nil otherButtonTitles:@"OK", nil];
[alert show];
[alert release];
} else {
// user entered valid email address
}
}
关于iphone - 有没有办法让文本字段条目必须是电子邮件? (在 xcode 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7123667/