0

私は iOS の初心者で、アプリに不適切なメールを追加しようとしています。メールアイコンを押すとアプリ内メールが開く画面があります。アプリ内メールのコードを持っています。ただし、ボタンは既にコントローラーのコンセントになっています。そのため、同じボタンをアプリ内メールのコードを持つ別のクラス/ファイルにリンクする方法がわかりません。デリゲートを設定することを考えていましたが、メール クラスでデリゲートを初期化する方法がわかりません。数日間苦労しています...助けてください!

サミット

4

1 に答える 1

2

MFMailComposeViewControllerを試してください...ここにいくつかのサンプルコードがあります:MEssageUIフレームワークをインポートし、MFMailComposeViewController / MessageUIを.hにインポートし、そのデリゲートにも準拠していることを確認してください

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


        [mailView setMailComposeDelegate:self];
    if ([MFMailComposeViewController canSendMail]) {
        [mailView setSubject:@"Interesting Apple News Article!"];
        NSString *mailString = [[NSString alloc] initWithFormat:@"Test!"]; 
        [mailView setMessageBody:mailString isHTML:NO];
        [mailView setModalTransitionStyle:UIModalTransitionStyleCoverVertical];
        [self presentModalViewController:mailView animated:YES];
        [mailString release];
        [mailView release];
    } else 
        [mailView release];

    }

   -(void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error {

if (error) {
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Mailing Error" message:[error localizedDescription] delegate:self cancelButtonTitle:@"Dismiss" otherButtonTitles:nil, nil];
    [alert show];
    [alert release];
    [self dismissModalViewControllerAnimated:YES];
} else {
    [self dismissModalViewControllerAnimated:YES];
}


  }
于 2012-05-01T04:17:03.780 に答える