2010-09-25 101 views
0

另一個新手問題:如果我有一個頂部可見導航欄並且底部有一個可見工具欄的UIViewController,如何向視圖控制器請求座標(框架,邊界)視圖的「可見」區域? (self.view.frameself.view.bounds返回null)...獲取視圖的框架/邊界

+2

self.view.frame和self.view.bounds不能返回null,它們返回一個CGRect。你的意思是CGRect表示0寬度和高度的矩形? – imaginaryboy 2010-09-25 19:37:41

+0

Henrik Hanssen:您是如何確定他們「返回null」的? – 2010-09-25 20:49:00

回答

0

如果我以正確的方式理解您,您可以自己計算幀大小。

#define kNavigationBarHeight 44 
#define kToolbarHeight 44 
#define kSystemBarHeight 20 
#define kWindowWidth 320 
#define kWindowHeight 480 

int width = kWindowWidth; 
int heigth = kWindowHeight - kNavigationBarHeight - kToolbarHeight - kSystemBarHeight; 
CGSize myViewSize = CGSizeMake(width, height); 

如果你的導航欄和工具欄是標準尺寸的,你的佈局方向爲波泰特這將是真實的。

+0

...,屏幕尺寸爲320×480,窗口占據整個屏幕。在可預見的將來,後者可能會保持真實,但前者在iOS平臺上的某些設備上已經不真實。 – 2010-09-26 21:47:13

+1

'[[UIScreen mainScreen]範圍]' – knuku 2010-09-27 07:07:07