2012-11-01 10 views
8

[警告表示]行でEXC_BAD_ACCESSを取得しています。UIAlertviewのEXC_BAD_ACCESSコード= 1

なぜ私はこれを取得していますか?

alert = [[UIAlertView alloc]initWithTitle:@"Application Alert" message:@"all date popup" delegate:self cancelButtonTitle:nil otherButtonTitles:@"Update",nil]; 

[alert show]; //EXC_BAD_ACCESS on this line 
+1

は、ここに与えられた私の答えをチェックしてください[http://stackoverflow.com/a/13084383/1538079] –

+1

あなたが呼んでいますそれはメインスレッドからですか? –

+0

'alert'のプロトタイプは何ですか? – AppleDelegate

答えて

6

ちょうどデリゲートnilを行い、

alert = [[UIAlertView alloc]initWithTitle:@"Application Alert" message:@"all date popup" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"Update",nil]; 

[alert show]; 

以下のようにそれ.CODE委任する自己を適用していないあなたは、デリゲートで自己を使用している場合は、警告デリゲートメソッド

を使用する必要があります
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 

それはそれが動作するかどうか、私は知っているEXC_Bad_Excess.letを与えることはありません... !!!!コーディング幸せ....

16

このクラッシュは、このクラッシュのためのiOS 6のソリューションでなければなりませんが、以下の通りである:

[alert performSelectorOnMainThread:@selector(show) withObject:nil waitUntilDone:YES];

+3

バックグラウンドから '[alert show]'を呼び出しているので、これが間違っていれば正しい解決策です。 – Hlung

+0

ありがとうございます! – alexmorhun

関連する問題