アラート上で押されたボタンによって処理を分岐

VBAで言うところのメッセージボックス。
画面に通知を表示して、押されたボタンによって処理を分岐。

UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"実行確認"
message:@"処理を実行します。)
delegate:self
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"OK",nil];

[alert show];
[alert release];

上記の文で、戻り値のあるアラートが実行される。(正確に言うと、キャンセルとOKの2つの戻り値があるアラートが実行される)

次に、アラートを出す処理のヘッダーファイルで、@Interface部分に『<UIAlertViewDelegate>』を追加する。

追加前:@interface TableViewController : UITableViewController{
追加後:@interface TableViewController : UITableViewController<UIAlertViewDelegate> {

このDelegateが追加されていると、アラートの終了時に起動する処理を実装できる。

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

    if(buttonIndex == 1) {
        // 押されたのは2番目のボタン(OKと表示されたボタン)
        // ここにOKの場合の処理を記述
    }
    
}

単純なアラートの表示

処理が実行されているか、この時変数には何が入っているか。
そんな簡単なチェック用のアラートの表示の仕方。

 UIAlertView* alert = [[[UIAlertView alloc]
 initWithTitle:@"動作確認"
 message:@"メソッド実行"
 delegate:nil
 cancelButtonTitle:nil
 otherButtonTitles:@"OK", nil] autorelease];
 
 [alert show];
 [alert release];

initWithTitleがタイトル、messageが本文。
内容を変えれば、そのままユーザーへの通知としても使用可能。