3

ユーザーがアプリでメールできるように、MFMailComposeViewController を使用しています。そのように:

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

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

無効な電子メール アドレスが指定された場合、単に受信者フィールドに入力されないことに気付きました。とにかく、これが発生した場合に対処することはできますか? またはこれをオーバーライドしますか?

ありがとう。

4

1 に答える 1

2

まず、メールアドレスを確認してください。以下のコードを使用してください

    -(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 を返します。

于 2012-04-22T13:41:33.530 に答える