en

hi, it seems you are using microsoft internet explorer. it doesn't match web standard and causes problems browsing this site. please please please use mozilla firefox or google chrome instead. thank you!

zh

哦哦!您正在使用Internet Explorer 瀏覽器,它與我們的網頁標準並不相容,可能會導致畫面顯示不正常。
請改用 Mozilla Firefox 或者 Google Chrome 才能正常瀏覽本網站,謝謝!

10.13.2011

取得畫面工作區域的大小

iOS 可以在很多 Apple 的裝置上執行,然而每個裝置所提供的工作區域大小 Application Frame 也不盡香同,下面提供一個簡單的方法,幫助你可以快速找出目前工作區域的畫面的大小,程式碼如下。

首先是狀態列 Status Bar 的部份。

//取得StatusBar的位置和大小
[self.view addSubview:theToolbar];
CGRect statusBarRect = [[UIApplication sharedApplication]statusBarFrame];

NSLog(@"%@", NSStringFromCGRect(statusBarRect));

再來是可工作區域的大小,如果你的應用程式包含狀態列,那麼可工作區域的大小就會是整個畫面的減去狀態列所剩下的區域。

//取得工作區域的位置和大小
CGRect workSpaceRect = [[UIScreen mainScreen]applicationFrame];

NSLog(@"%@", NSStringFromCGRect(workSpaceRect));

最後就是整個畫面的大小。

//取得整個畫面的位置和大小
CGRect windowRect = [[UIScreen mainScreen]bounds];

NSLog(@"%@", NSStringFromCGRect(windowRect));

上述程式碼皆是將取得的大小範圍資訊儲存在 CGRect 型態的變數中,再將此變數以字串的方式顯示出來。

其他有關 CGRect 和 Status Bar 的資訊,大家可以參考關於 CGRect 的二三事Status Bar 的二三事一文。








沒有留言:

張貼留言