MFMailComposeViewController电子邮件地址无效?

时间:2012-04-22 12:02:59

标签: iphone objective-c ios email

我正在使用MFMailComposeViewController,因此用户可以在应用中发送电子邮件。就像这样:

MFMailComposeViewController *mail = [[MFMailComposeViewController alloc] init];

[mail setToRecipients:[NSArray arrayWithObject:emailString]];
mail.mailComposeDelegate = self;
[self presentModalViewController:mail animated:YES];

我注意到如果给它一个无效的电子邮件地址,它根本就没有把它放到收件人字段中,无论如何我采取行动这种情况发生了吗?或者压倒这个?

感谢。

1 个答案:

答案 0 :(得分:1)

首先尝试验证您的电子邮件地址。请使用以下代码

    -(BOOL) NSStringIsValidEmail:(NSString *)checkString
    {
          NSString *stricterFilterString = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
          NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", stricterFilterString];
          return [emailTest evaluateWithObject:checkString];
    }

将您的电子邮件字符串作为参数传递给NSStringIsValidEmail:方法。如果有效则返回YES,否则返回NO。