質問: 今までUIAlertViewを使用していたのですが、 これをUIAlertControllerに一律置き換えています。 そこで、AppDelegate上にあるAlertViewを どのように置き換えるかという点について教えてください。 (ViewControllerではないので、presentViewControllerができずにいます)
回答: 以前qiitaへ投稿した記事からの抜粋です。 どこから呼び出しても(各種モーダルビューが出ていても)大丈夫なように作ったつもりです。 ``` // 警告を表示します。OKボタンタップで閉じます。 void Warning(NSString *message) { UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"" message:message preferredStyle:UIAlertControllerStyleAlert]; [alert addAction:[UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:nil]]; // 親ビューコンをなんとか検索 UIViewController *baseView = [UIApplication sharedApplication].keyWindow.rootViewController; while (baseView.presentedViewController != nil && !baseView.presentedViewController.isBeingDismissed) { baseView = baseView.presentedViewController; } [baseView presentViewController:alert animated:YES completion:nil]; } ``` ご参考まで。