2016-04-07 8 views
2

私は現在、MFMailComposeViewControllerをpresentviewcontrollerと呼んで、dismissviewcontrolleranimatedによって却下された後、再びviewcontrollerを押します。ボタンが消え、タイトルが間違っています。 [B](戻るボタン付き) - (現在) - > MFMailComposeViewController - (表示解除) - > ShowController [B] - [ViewController(BUS)])UINavigationControllerが間違った振る舞いをした後、viewcontrollerが表示されました。

スワイプの代わりに戻るボタンを押しても、まだスクロールしていないことがわかりました(私は、スワイプバック) - > ViewController [A] - (プッシュ) - > ViewController [B]いくつかの問題は通常のナビゲーションプッシュコントローラとして動作しません

誰かが助けることができれば多くのありがとう!これらすべての後


、のViewControllerバックのViewControllerに[B] POP /スワイプ[A] viewdidappearとのViewControllerでviewwillappear関数[A]が起動されていません。

+0

より良い回答を得るためには、実際のコードとして含める必要があります。可能な限り多くの関連コードが理想的ですが、問題に直接関連するコードは最低限必要です。 – jskrwyk

+0

私はこの問題をスワイプバックで直し、viewWillAppearにナビゲーションタイトルなどを設定して、viewWillDisAppearメソッドでタイトルを非表示にしてみてください。これが役立つことを願っています。 –

答えて

1

私のアプリには全く同じ流れがありますが、ナビバーがうまく動かなくても問題ありません。ここで

は、ビューコントローラが作成される方法は次のとおりです。

MFMailComposeViewController *mailVC = [[MFMailComposeViewController alloc] init]; 

デリゲートが設定されている:

mailVC.mailComposeDelegate = self; 

ビューコントローラが提示されています

[self presentViewController:mailVC animated:YES completion:nil]; 

ビューコントローラがで却下されましたユーザーがナビゲーションバーの[キャンセル]ボタンを押したときに呼び出されるデリゲートメソッド:

- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error 
{ 
    [self dismissViewControllerAnimated:YES completion:nil]; 
} 

これが役に立ちます。

関連する問題