0

私は風景モードでのみ実行されているiPhoneアプリを持っていますが、最近は(UIButtonアクションを使用して)メール/ SMS/Facebookの機能を追加したかったのです。最後のものはスムーズに動いています。私はウェブブラウザを起動します(それ自体がポートレートモードを管理します)が、メールやSMSの作曲家が私を怒らせています。 私はこのアプリケーションを横長モードでのみ使用したいと思います。起動するメール/ SMS/FB(ブラウザは実際には)を除きます。ランドスケープiPhoneアプリでメール/ SMSを実行するには?

私は風景の中のアプリ画面を持つとき、ポートレートモードでは、メール/ SMSの作曲を持って管理しますが、キーボードがあまりにも風景の中に表示され、作曲の右/左半分をブロックしている - [composer setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];

でそれをやったのいずれかのI 「このトピックに悪いものを読んMまたは私は単に盲目だ;) - 任意の助けが必要ないずれかの方法を、感謝

EDIT:

- (BOOL)shouldAutorotateToInterfaceOrientation 

私はオーバーライドされたとルートのViewControllerを持っています

両方のランドスケープモードでYESが返されます。このrootVCは、mail/sms/fbの3つのボタンを持つShareVCを起動しています。私は肖像画で始まるウェブブラウザを起動するようなものを達成したいと思っています。メール&と同じですが、モーダルビューコントローラを使用してメール/ SMSを送信した後にShareVCに戻ります。
また、plistで横向きモードに設定しました。これは私がやろうとしていますどのような明確ホープ:)希望のViewControllerにこれを追加すること

+0

OK、誰かがどのように認識している場合ランドスケープアプリケーション内でランドスケープモードでメール/ SMS作曲家を起動する - それでも満足できるでしょう – raistlin

答えて

0

問題は、私が存在呼んでいたが判明/ childVCにないrootVC自体にmodalViewControllerを却下役に立てば幸い、ここにコードスニペットです:

-(IBAction)goMail{ 
    NSLog(@"gomail..."); 
    MFMailComposeViewController *picker = [[[MFMailComposeViewController alloc] init] autorelease]; 
    NSUserDefaults *settings = [NSUserDefaults standardUserDefaults]; 

    if ([MFMailComposeViewController canSendMail]) { 
     picker.mailComposeDelegate = self; 
     [picker setSubject:@"Hello iPhone!"]; 

     // Set up recipients 
     NSArray *toRecipients = [NSArray arrayWithObject:@"[email protected]"]; 
     [picker setToRecipients:toRecipients]; 
     [picker setMessageBody:@"mail content..." isHTML:NO]; 
     [self.controller presentModalViewController:picker animated:YES]; 
     //[picker release]; 
    } 
} 
+0

ここで私が見つけた場所です[解決策](http://www.iphonedevsdk.com/forum/iphone-sdk-development/76670-getting-modal-view-controller-display-landscape-orientation.html) – raistlin

0

試してみてください。

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

私は近くのMacを持っていないのでエラー(複数可)があるかもしれません。

が、それは:) を固定

+0

私は言及したスニペットを意味するか?またはMFComposersをいつものように起動してshouldAutoRotateをオーバーライドしますか? – raistlin

+0

このコードをビューコントローラにコピーしてください。これはデフォルトの方法です。だから、ユーザーがデバイスを回すときには、それも変わりますが、ランドスケープだけに変わります。 – Novarg

+0

ええ、ええ、風景アプリを使用すると、突然向きが変わるとは思っていませんが、問題があると思われます。/編集中の追加情報を追加します。 – raistlin

関連する問題