2011-05-13 9 views

答えて

4

ボタンがUIAlertViewでクリックされ、そのデリゲートメソッド

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

呼び出されます。デリゲートがこのメソッドを実装し、どのボタンが押されたかを確認する必要があります。

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex { 
    switch (buttonIndex) { 
     case 0: 
      // Do something for button #1 
      break; 
     case 1: 
      // Do something for button #2 
      break; 
     ... 
    } 
} 

あなたが複数のアラートビューを持っている場合は、次のようにあなたは彼らのタイトルによってそれらを区別することができます

if ([alertView.title isEqualToString: yourAlertView.title]) { 
    // proceed... 
} 
+0

@Malloc use%i buttonIndexはintではなく、doubleです。 –

+0

スイッチのステートメントを使用してこの答えに+1。 –

1

あなたはUIAlerViewボタンのアクションを取得したい場合。

アクションを取得するには、UIAlertViewDelegateとそのメソッドを使用する必要があります。参考のために

2

それはあなたのために働くのウィルこのコードを試してみてください

最初のセットデリゲート、次のようにUIAlertViewは、そのデリゲートメソッドを記述するために、このコード...

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 
{  
    if (buttonIndex == 0) { 
     //Some Implementation 
    } else if(buttonIndex == 1) { 
     //Some Implementation 
    } 
} 
8
- (void)alertView:(UIAlertView *)alertView 
     didDismissWithButtonIndex:(NSInteger) buttonIndex 
{ 
    if (buttonIndex == 0) 
    { 
     NSLog(@"Cancel Tapped."); 
    } 
    else if (buttonIndex == 1) 
    {  
     NSLog(@"OK Tapped. Hello World!"); 
    } 
} 

を使用してください...