[ObjC] UIAlertController の使い方

概要

iOS8 で UIAlertView と UIActionSheet が deprecated になり、代わりに UIAlertController を使用するようになっている。現時点では全て使用する事が可能だが UIAlertView, UIActionSheet は使用出来なくなる可能性が高い。

実装

インスタンスの生成

UIAlertController は ActionSheet と Alert の2つの機能があります。
ActionSheet と Alert の切り替えは UIAlertControllerStyle で行います。

  • UIAlertControllerStyleActionSheet
  • UIAlertControllerStyleAlert

アクションの追加

UIAlertControllerではボタンを UIAction として設定します。
UIAction には下記の3つのスタイルがあります。

  • UIAlertActionStyleDefault
  • UIAlertActionStyleCancel
  • UIAlertActionStyleDestructive

ここで注意すべき事は Cancel を複数設定するとクラッシュすることでしょうか。

また、UIAlertControllerStyleAlert の場合のみ text field の追加が可能です。

UIAlertControllerの表示

UIAlertController は UIViewController を継承しているので presentViewController などを使う必要があります。
また、1つのViewControllerにpresentViewControllerを複数することはできないことに注意が必要。
複数追加しようとするとログに warning が出て Alert は表示されない。

参考

UIAlertController Class Reference

こんな感じで UIAlertController を使用できます。

スポンサーリンク
スポンサーリンク

コメントをどうぞ

メールアドレスが公開されることはありません。