1

MFMailComposeViewControllerを使用してiPhoneアプリからメールを送信しています。これは正常に機能しますが、送信またはキャンセルした後、modalViewControllerを閉じる必要があります。これを行うと、プログラム受信信号「EXC_BAD_ACCESS」が表示されます。これはあまり説明的ではありません...助けてください!!

これは、メールとmodalViewControllerを作成するためのコードです。

-(void)sendFavMail:(NSString *)body{

    MFMailComposeViewController* mailViewController = [[MFMailComposeViewController alloc] init];
    mailViewController.mailComposeDelegate = self;
    [mailViewController setSubject:@"Favorites List"];
    [mailViewController setMessageBody:body isHTML:YES]; 
    [self presentModalViewController:mailViewController animated:YES];
    [mailViewController release];   

}

そして、これはデリゲートのコードであり、modalviewcontrollerを閉じます。

- (void)mailComposeController:(MFMailComposeViewController*)controller  
          didFinishWithResult:(MFMailComposeResult)result 
                        error:(NSError*)error;
{
 switch (result)
    {
        case MFMailComposeResultCancelled:
            NSLog(@"Cancelled sending");
            break;
        case MFMailComposeResultSaved:
   NSLog(@"Message Saved");
            break;
        case MFMailComposeResultSent:
   NSLog(@"Message Sent");
            break;
        case MFMailComposeResultFailed:
   NSLog(@"Sending Failed");
            break;
        default:
   NSLog(@"Message not sent");
            break;
    } 
[self dismissModalViewControllerAnimated:YES];
}

ご協力いただきありがとうございます!!

4

1 に答える 1

3

くそー、自分で修正しました:-)

送信/キャンセルする前に、メッセージの本文でオブジェクトを解放しました。それを修正するために私がしたことは、このボディオブジェクトが自動解放されたことを宣言することです。そして、あなたは何を知っていますか?できます!

私自身の質問に答えたばかりです...

于 2010-01-31T22:21:15.753 に答える