2011-10-20 8 views
0

iPadアプリケーションをランドスケープモードで開発しています。すべてのビューコントローラでreturn(interfaceOrientation == UIInterfaceOrientationLandscapeRight);を設定しました。 しかし、私は次のコードを介してビューフレームを変更すると、それは変更されていません、それはipad.Howのフルスクリーンを占めていますどのような助けてくださいこの問題を克服することができますか?view.frameはipadで動作していませんか?

-(IBAction)category_Click:(id)sender 
{ 

CGRect rect = _categoryController.view.bounds; 
rect.origin.x = 0; 
rect.origin.y = rect.origin.y; 
rect.size.width = 1024; 
rect.size.height = 650; 
_categoryController.view.bounds = rect; 
_categoryController.view.bounds = CGRectMake(rect.origin.x, rect.origin.y,1024, 650); 
[self presentModalViewController:_categoryController animated:YES]; 

} 
+2

最初。あなたは 'frame'について語りますが、あなたのコードは' bounds'に関するものです。 – beryllium

+1

私は両方を試みた..私の質問に言及している? –

答えて

1

のViewControllerが提示されたた後、あなたは、フレームを調整しようとしたことがありますか?私は、presentModalViewController:animated:メソッドは、実行中にフレームを変更することがあると信じています。アニメーションが終了するまで待つ必要があるかもしれません。

可能であれば、_categoryControllerのクラスの ' - (void)viewDidAppear:'メソッドでビューのフレームを調整してみてください。

一般的に、モーダルビューコントローラの外観を円滑に変更することは難しいことが分かりました。

0

チェックmodalPresentationStyleプロパティ

_categoryController.modalPresentationStyle = UIModalPresentationFormSheet; 
_categoryController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 
[self presentModalViewController:_categoryController animated:YES]; 
_categoryController.view.superview.frame = CGRectMake(0, 0, 818, 739); 
_categoryController.view.superview.center = self.view.center; 
関連する問題