2011-08-03 27 views
2

以編程方式設置UIScrollView,請勿使用.xib文件發佈答案。以編程方式設置UIScrollView.size = view.size - allAdditionalBars.size(如TabBar或NavigationBar)

我的UIScrollView位於我的模型類中,所以我希望代碼能夠輕鬆地導入到另一個項目中,例如。爲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

相關問題