私の実装は非常に単純です:
.h
ファイルでは、私は実装していますMFMailComposeViewControllerDelegate
そして、.m
ファイルには、次のコードが含まれています。
-(void)MailCurrentViewAsAttachment
{
if ( [MFMailComposeViewController canSendMail] ) {
MFMailComposeViewController * mailComposer = [[MFMailComposeViewController alloc] init];
mailComposer.delegate = self;
[mailComposer addAttachmentData:imageData mimeType:@"image/jpeg" fileName:@"attachment.jpg"];
[self presentViewController:mailComposer animated:YES completion:nil];
}
}
-(void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error
{
[self dismissViewControllerAnimated:YES completion:nil];
}
上記の変数imageData
はUIImageタイプであり、問題がないことは確かです。必要な画像がメールの作成ウィンドウに正しく表示されます。
ただし、[キャンセル]ボタンをクリックしても、[作成]ウィンドウは閉じません。私は何が欠けていますか?
注:最新バージョンのxcodeでiOS 6を使用していますが、私のアプリはユニバーサルアプリです。