2011-11-15 5 views
0

とは何かを持っているかもしれない、私は内部IBActionを呼び出すボタンがあり、それは内部showEmailModalViewに私はMFMailComposer Exec_bad_accessは - それはビューコントローラで初期化

を持っている...今

 [self showEmailModalView:FinalEmail]; 

を呼び出します

-(void) showEmailModalView:(NSString *)email{ 

    MFMailComposeViewController *mvc =[[[MFMailComposeViewController alloc] init]autorelease]; 
    mvc.mailComposeDelegate = self; 

    NSArray *mails = [[NSArray arrayWithObject:email]autorelease]; 

    [mvc setToRecipients:mails]; 

    NSString*emailBody =[NSString stringWithFormat:@" "]; 

    [mvc setMessageBody:emailBody isHTML:YES]; 

    mvc.navigationBar.barStyle = UIBarStyleBlack; 
    [[self navigationController] presentModalViewController:mvc animated:YES]; 

} 

、その後

-(void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error 
{ 
[[self navigationController] dismissModalViewControllerAnimated:YES]; 
} 

今は大丈夫動作します...アルのために電子メールや削除などのシナリオでは、コードの完了直後にシミュレータがexec_bad_accessをスローしてから何もしません。

PS:これまでに宣言したようにmvcにリリースするときは、エラーが発生していることがわかりました。アリの考え。

更新:

I iは、ヘッダファイルでMVCを初期化してからちょうど同じ文を使用して... 一つだけの変更でアプリをインストールしました。だから私はもうexec_bad_accessのエラーを取得していない...私はそれがnsZOMBIES ....の恐怖だったと思うあなたの助けとサポートのおかげで..皆さん...両方... ....

+1

設定NSZombieEnabledか行く(あなたはXCodeの3を使用している場合、*。*。) (Xcode 4を使用している場合)、exaを表示するには、Schemeの編集、Runタブ、Diagnosticタブ、ゾンビの設定次回にアプリを実行するとEXEC_BAD_ACCESSがスローされます。 – krafter

答えて

1

あなたはそれがを自動解放すでにだ、このオブジェクトを自動解放べきではありません。

NSArray *mails = [[NSArray arrayWithObject:email ]autorelease]; 
代わりに変更の

NSArray *mails = [NSArray arrayWithObject:email]; 
+0

良いキャッチは、別のものを試していたが、それは事実ではありません...まだ問題が存在する..と私は電子メールを送信するまでそれをデバッグするすべての問題を示していません。 – medampudi

関連する問題