2014年10月04日

UIAlertController を AppDelegateで表示する

通常はViewControllerの中で UIAlertControllerを表示するが、何かの事情でAppDelegateの中で表示することがある。

この場合のUIAlertControllerの表示方法。

// コントローラを生成
UIAlertController *ac = [UIAlertController alertControllerWithTitle:@"Info"
message:@"Message"
preferredStyle:UIAlertControllerStyleAlert];

// アクションを生成
UIAlertAction *okAction = [UIAlertAction actionWithTitle:@"OK"
style:UIAlertActionStyleDefault
handler:^(UIAlertAction *action) {
// ボタンタップ時の処理

}
];

// コントローラにアクションを追加
[ac addAction:okAction];

// アクションシート表示処理
[self.window.rootViewController presentViewController:ac animated:YES completion:nil];


ViewController で presentViewControllerで表示するときは、
[self presentViewController:ac animated:YES completion:nil];
と記述するのが一般的だが、AppDelageteの中で表示する場合は、
[self.window.rootViewController presentViewController:ac animated:YES completion:nil];
と記述する。

参考記事:
http://stackoverflow.com/questions/13430179/appdelegate-rootviewcontroller-and-presentviewcontroller

ラベル:apple Mac iPAD IOS iPhone
posted by mobileDeveloper at 13:54 | Comment(0) | TrackBack(0) | UIAlertController | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック