2011-08-03 3 views
2

UIScrollViewはプログラムで設定されていますが、.xibファイルを使用して回答を投稿しないでください。UIScrollView.size = view.size - allAdditionalBars.size(TabBarやNavigationBarのような)プログラムで

私のUIScrollViewは私のモデルクラスに置かれているので、コードをeasly他のプロジェクトにインポートすることができます。 iPad用または回転式スクリーン付き。

self.view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width;, self.view.frame.size.height;)]; 

そして、私UIScrollViewの:

私は景色を眺めることができます。私はそれが私のコントローラクラスが持つすべてのバーを数えないすべての画面をカバーするためにサイズを設定したい。しかし、私は知りません;)

私はself.view.frame.size.height - self.navigationController.navigationBar.frame.heightとself.tabBarController.tabBar.heightが存在する場合はそれを減算します。

UIScrollViewのサイズを自動的に設定するメソッドはありますか?

ありがとうございます!

答えて

1

UIViewControllerサブクラスでは、UINavigationControllerまたはUITabBarControllerのクロムのサイズを気にする必要はありません。これらのコントローラは、コントローラのメインビューのサイズを、適切なコンテンツ領域に合わせて自動的に変更します。

コントローラのloadViewでUIViewを自分で作成している場合、通常は最初にサイズを[[UIScreen mainScreen] applicationFrame]に設定します。 UIScrollViewをサブビューとして追加すると、(メインビューとして直接UIScrollViewを使用するのではなく)メインビューの全領域を塗りつぶす場合は、フレームとしてself.view.boundsを使用し、autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;を必ず設定してください。

+0

ありがとうございました!これは動作するようです:) – Vive

関連する問題