なかじまの開発ブログ

アプリ開発における備忘録などなど。

MENU

複数のUIAlertViewのボタン押下処理を管理する【Objective-C】

『ViewController.h』

@interface ViewController : UIViewController <UIAlertViewDelegate> {
  UIAlertView *alertView1;
  UIAlertView *alertView2;
}


『ViewController.m』

- (IBAction)Button1Tap:(id)sender {
  alertView1 = [[UIAlertView alloc] initWithTitle:nil message:@"アラート1" delegate:self cancelButtonTitle:@"ボタン1" otherButtonTitles:@"ボタン2", nil];
  [alertView1 show];
}

- (IBAction)Button2Tap:(id)sender {
  alertView2 = [[UIAlertView alloc] initWithTitle:nil message:@"アラート2" delegate:self cancelButtonTitle:@"ボタン1"otherButtonTitles:@"ボタン2", nil];
  [alertView2 show];
}


- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
  // アラート1
  if (alertView == alertView1) {
    switch (buttonIndex) {
      case 0:
        // ボタン1を押したときの処理
        break;

      case 1:
        // ボタン2を押したときの処理
        break;
      
      default:
        break;
    }
  }
  // アラート2
  else if (alertView == alertView2) {
    switch (buttonIndex) {
      case 0:
        // ボタン1を押したときの処理
        break;

      case 1:
        // ボタン2を押したときの処理
        break;
      
      default:
        break;
    }
  }
}