Application tried to present a nil modal view controller on target 問題

公開日: : iPad, iPhone

MFMailComposeViewController を使ってメール送信ダイアログを表示しようとしたところ、Application tried to present a nil modal view controller on target が発生してアプリが強制終了されてしまう問題に遭遇。

iphone – 'Application tried to present a nil modal view controller on target' error/crash when trying to open mail composer – Stack Overflow

に書いてあるとおり、MFMailComposeViewController の canSendMail を使って、端末からメールを送れる状態であるかを確認する必要がある。
テスト用端末や Simulator だとメールの設定をしていないことも多いと思うので、遭遇することがありそうだ。

 Class mailClass = (NSClassFromString(@"MFMailComposeViewController"));
if (mailClass != nil) {
        MFMailComposeViewController * mailView = [[MFMailComposeViewController alloc] init];
        mailView.mailComposeDelegate = self;

        //Set the subject
        [mailView setSubject:emailSubject];

        //Set the mail body
        [mailView setMessageBody:emailBody isHTML:YES];


        //Display Email Composer
     if([mailClass canSendMail]) {
        [self.navControl presentModalViewController:mailView animated:YES];
     }
}

ちなみに、メールを送信できない環境である場合自動的にダイアログが表示される。

Mfmail

さらにちなみに、SMSを送りたい場合は MFMessageComposeViewController を使い、その場合送信可能かどうかは canSendText を使うとのこと。
上記のStack Overflow の質問では、メールを送信したいのにこちらが使われていたので、二重に間違っていたことになる。

関連記事

Apple Special Event 2010

2010年は、1月に初代 iPad が発表され、6月にWWDCでiPhone4が発表されるという、

記事を読む

no image

[iPhone開発本][洋書] iPhone 3D Programming

たまたまApp Storeで O'reilly Media で検索したら、600円の本がわんさか表示

記事を読む

no image

RPG風タスク管理アプリ EpicWin

Designed for Use を読んでいて、例として紹介されていたので試しに買ってみた RP

記事を読む

[Xcode] iOS Developer Program 証明書の更新 2018

恒例の、年に一度の証明書の更新。今年はこのページを参照した。年に一度しか行わない作業だが、さすがに迷

記事を読む

no image

iPhone SDK 3.0 beta 4

iPhone プログラミング記さんによると、 iPhone SDK 3.0 beta 4 になってよ

記事を読む

iOS用アイコンをまとめて生成する

しばらく開発してきたアプリがようやくリリースできる状態になってきたので、知り合いのデザイナーと飲み

記事を読む

no image

いまさらながらXcode4導入 2011/06/29

Twitterを見ているといろいろ大変そうだったので敬遠していたXcode4だが、デバッグに便利そう

記事を読む

Olympus Camera Kit (SDK)を製品版に移行

発売が延期されていた OLYMPUS AIR A01も2015/3/25(水)についに発売された。

記事を読む

no image

App Store の Kids Category にアプリを公開する その2

Kids Category でアプリを公開してもらうために Submit したところ、見事に Rej

記事を読む

no image

iPhoneアプリをぬるぬるとつくろう。

かごおたさんのこの記事 はポイントが簡易にまとまっていてiPhoneアプリを作り始める際にはよい

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

容量不足でApple Watch Series 3をアップデートできない

容量不足で Apple Watch をアップデートできない場合 -

Apple Event Sep 2021

ついに後数時間で Apple Event 2021.09.15 があ

PHPを7.4に上げようとして失敗した話

さくらVPSのPHPを5.3から7.2にアップデート でPHPを7.

WF-1000XM4用カラビナ付きケースを買ってみた

まだ発売されたばかりで、ケースのレビューもなかったので、エイ

ソニーWF-1000XM4を買ってみた

2019年に ソニーのノイキャンヘッドセットWF-1000XM3購入

→もっと見る

  • 2013年4月
    1234567
    891011121314
    15161718192021
    22232425262728
    2930  
PAGE TOP ↑