1

ボタン付きのUIAlertViewがあり、これらのボタンにアクションを実行させようとしています。問題は、メソッドに「宣言されていない識別子」があることです。

私が見た問題http://tinypic.com/view.php?pic=28qvhom&s=6

コード

アラートビュー

 UIAlertView *alert = [[UIAlertView alloc]
    initWithTitle:@"Well done!"
    message: @"You got all 20 in Time: x"
    delegate:nil
    cancelButtonTitle:nil
    otherButtonTitles:@"Save and Quit", @"Quit", nil];


[alert show];}

ボイド

-(void)alertView:(UIAlertView* )alertView 
clickedButtonAtIndex:(NSInteger)buttonIndex         

{

    if(buttonIndex==0) {/*some action */ }
    else if(butonIndex==1){/*some action */}

}


     //I aso have <UIAlertViewDelegate> in my .h file.   
4

1 に答える 1

0

問題はelse if(butonIndex==1)、単語ボタンの2番目の「t」が欠落していることです。

将来の参考のために、Xcodeの「Fix-It」機能は、このような些細な間違いを修正します。

ここに画像の説明を入力してください

赤い丸をクリックしてfix-itメニューをアクティブにし、Enterキーを押します。

編集:

これを行う:

- (void)myMethod{

}

-(void)alertView:(UIAlertView* )alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{

}

これではない:

- (void)someMethod
{
    -(void)alertView:(UIAlertView* )alertView clickedButtonAtIndex:(NSInteger)buttonIndex
    {

    }
}

そうでない場合は、アラートビューデリゲートの前のメソッドの最後に閉じ中括弧「}」がありません。

于 2012-10-29T13:49:56.593 に答える