一つのビューから複数のUIAlertViewを使った制御 | 静岡県富士市在住のiPhoneアプリ開発者ブログ

一つのビューから複数のUIAlertViewを使った制御

盲点だったのでメモ

UIAlertView での動作は

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


で受け取るので、複数のUIAlertViewを使う場合は、クラスに変数を設けて、アラートを表示するときに設定してあげる

例:

#define cAlertType_A 0
#define cAlertType_B 1

alertType = cAlertType_A;
//ここでUIAlertViewを表示

---

alertType = cAlertType_B;
//ここでUIAlertViewを表示

みたいにして

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex;
{
switch (alertType) {
case cAlertType_A:
//アラートAを表示した後の処理
break;
case cAlertType_B:
//アラートBを表示した後の処理
break;
default:
break;
}
}



このようにすれば、一つのビューからいくつでもUIAlertView を表示できる
(一つの画面でそんなに分岐させないでしょーというツッコミは抜きにして・・・)
ちなみに UIActionSheet でも同様にできると思います