2011-03-04 7 views
4

iOS 4.2の下でもバグが存在していましたが、iOS 4.3でiPad上で横向きの向きのみをサポートするアプリケーションを構築しています。[UIViewController presentModalViewController:animated:]は、モーダルビューを左から動かすのはなぜですか?

アプリケーションのいくつかの場所で、私はUIViewControllerをモーダルビューとして表示しています。それらのすべては、このパターンを使用して示されています。予想通り

viewController.modalPresentationStyle = UIModalPresentationFormSheet; 
viewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical; 
[self presentModalViewController:viewController animated:YES]; 

ほとんどの場所では、彼らは仕事 - モーダルフォームシートスライドを上方向に画面の下からで。

ただし、2つのケースでは、モーダルフォームシートが画面の左下からスライドします。フォームシートは、フォームシートの下部が見えない状態でほぼ右にスライドします。テキストフィールドにフォーカスを当てて画面上のキーボードを表示すると、フォームシートは画面の中央に移動します。

私はXIBsの模擬メトリックは、彼らの行動に影響を与えるとは思わないが、私は風景にそれらのすべてのためのオリエンテーション(呼び出しUIViewControllerselfとモーダルビューコントローラviewController両方)を設定しています。

これらの2つのモーダルフォームシートが他と異なる動作をする理由はありますか?

+0

あなたは答えを見つけましたか?私はこの問題に苦労しています。私は、このコードを横長モードのSubView(ViewController)で呼び出しました。しかし、モーダルビューはポートレートモードのように左側から表示され、フルスクリーンでも表示されます.....してください... –

答えて

0

は、私はあなたがビューをワン場合は風景が右/左のようにあなたがshouldAutorotate機能のへこみリターン横向きので、このコードを使用して、ここだと思いますあなたがNavControllerに組み込まれたviewControllerを持っていれば、navController shouldAutotorateもランドスケープに設定されます

0

することを確認してください。..

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{ 
    // Return YES for supported orientations 
    return (interfaceOrientation == UIInterfaceOrientationLandscapeRight||interfaceOrientation == UIInterfaceOrientationLandscapeLeft); 
    // return YES; 
} 

が、それはあなたを助けることがあり、これを試してみてください:

関連する問題