2011-01-18 9 views
2

私はアプリの電子メールでMFMailComposeViewControllerを使用しています。ポートレートモードでは正常に動作します。しかし、双方向をサポートする私のアプリが横長モードになっているときは、 [self presentModalViewController:mailVC animated:YES]を使用しています。MFMailComposeViewControllerは、iPadでポートレートの向きを強制します

私のアプリ全体を、私が望まないポートレートモードに強制します。

私はMFMailComposeViewController shouldAutorotateToInterfaceOrientationをオーバーライドすることから多くのことを試みました。最初のレスポンダを辞めるなどの方法でした。

iPadでLandscapeでMFMailComposeViewControllerを使用するにはどうすればよいですか?

答えて

1

は自動回転機能をオーバーライドしてみてください。また

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { 
    return ((interfaceOrientation == UIInterfaceOrientationLandscapeLeft) || 
      (interfaceOrientation == UIInterfaceOrientationLandscapeRight)); 
} 

、アプリ内での回転を管理のUIViewControllerからMFMailComposeViewControllerを提示します。

2

私は同じ問題を抱えていて、上書きを試みました。それは私を助けませんでした。

"presentModalViewController:"を(AppDelegateの)アプリケーションウィンドウのrootViewControllerに送信してください。

MFMailComposeViewControllerはrootViewController方向を強制できないため、rootViewControllerのnavigationControllerによってプッシュされたviewControllersの向きを強制することができるので、私にとってはうまくいくと思います。

[((AppDelegate *)[UIApplication sharedApplication]).window.rootViewController presentViewController:mailVC animated:YES completion:nil]; 

あなたはこのようなものが必要

関連する問題