makotton.com

UIAlertControllerでdeclares the selector ‘presentViewController:animated:completion:’

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。

iOS7まで使用可能だったUIAlertViewはdeprecatedになり、iOS8ではUIAlertControllerを使うことが推奨されました。

そのUIAlertControllerをpresentViewControllerで表示しようとした際、以下のようなエラーになることがあります。

No visible @interface for ‘AppDelegate’ declares the selector ‘presentViewController:animated:completion:’

UIAlertControllerをビューコントローラー以外から表示しようしたのが原因です。UIAlertViewはビューコントローラー以外でも表示可能でしたが、UIAlertControllerはUIViewControllerの派生クラスですので表示元としてビューコントローラーが必要です。

 

モバイルバージョンを終了