iOS8からUIAlertViewが廃止 代わりに使うのはUIAlertController

公開: 2014-11-18 02:44
更新: 2016-04-29 06:02

iOS8からUIAlertViewのコールバックが上手く動かないなー
あとそういえば4日もヨーグルト以外何も食べてないなー外出るのめんどいなー
といいつつ、サイフ片手に焼き肉弁当と幕の内弁当とおにぎり3つを買いにコンビニへ行こうとしているそこのあなた。

食べ過ぎです。




そこで今回はiOS8から仲間入りしたUIAlertControllerをどのように使うのか、
iOS8とiOS7以下を場合分けで対応したコードを書いてみましょう。(BlocksKit使用)



えいやっ

NSString* message = @"この画像を削除しますか"; //実際は「message」を「massage」にするとちょっと面白い

//iOS8以上
if([UIAlertController class]) {
        UIAlertController* ac = [UIAlertController alertControllerWithTitle:nil message:message preferredStyle:UIAlertControllerStyleAlert];
        [ac addAction:[UIAlertAction actionWithTitle:@"削除" style:UIAlertActionStyleDefault handler:^(UIAlertAction* action) {
                //なんか実行
        }]];
        [ac addAction:[UIAlertAction actionWithTitle:@"キャンセル" style:UIAlertActionStyleDefault handler:nil]];
        [self presentViewController:ac animated:YES completion:nil];
}
//iOS7以下
else {
        UIAlertView* av = [[UIAlertView alloc] bk_initWithTitle:nil message:message];
        [av bk_addButtonWithTitle:@"削除" handler:^{
                //なんか実行
        }];
        [av bk_addButtonWithTitle:@"キャンセル" handler:nil];
        [av show];
}

なんとなく形は似てますね。

UIAlertControllerの方はUIViewControllerなので、
現コン(現在のUIViewController)からpresentViewControllerしなければなりませぬので注意。



あと季節の変わり目は体調管理に注意。



この記事をシェア
この記事にコメントする
書き込む
あっきぃ(@appstars_aki)
Web、iOSなフリーランサーです。好きなものはお寿司です。でもお寿司は高いので普段は雑草とか拾ったドングリを食べています。お仕事や意味もなく毎月お小遣いをくれる人を探してます。

お仕事の依頼や自分で作ったアプリのレビューを希望しちゃう方はaki@appstars.jpまでご連絡ください。