是否有一個屬性是沒有狀態欄大小的窗口大小?單擊大小沒有狀態欄的UIWindow屬性?
我正在動態創建一組控件,我想要佔據整個屏幕(但僅限於可見部分),但是當我將它們基於主要的window.Frame
或window.Bounds
時,頂部按鈕會在狀態欄下繪製。
我對這個世界相當陌生,所以我可能錯過了一些明顯的東西。我當然可以手動進行數學運算(20px,從我讀的其他地方),或者我可以hide it,但我希望有一種方法可以用框架內置的東西來完成。
是否有一個屬性是沒有狀態欄大小的窗口大小?單擊大小沒有狀態欄的UIWindow屬性?
我正在動態創建一組控件,我想要佔據整個屏幕(但僅限於可見部分),但是當我將它們基於主要的window.Frame
或window.Bounds
時,頂部按鈕會在狀態欄下繪製。
我對這個世界相當陌生,所以我可能錯過了一些明顯的東西。我當然可以手動進行數學運算(20px,從我讀的其他地方),或者我可以hide it,但我希望有一種方法可以用框架內置的東西來完成。
將UIScreen.MainScreen.Bounds與UIScreen.MainScreen.ApplicationFrame進行比較。前者「[c]包含屏幕的邊界矩形,以點爲單位。」後者包含「框架矩形用於您的應用程序的窗口......此屬性包含屏幕邊界減去狀態欄佔用的區域(如果它是可見的)。使用此屬性是推薦的方法來檢索您的應用程序的初始窗口大小。矩形以點指定。「通常,根據UIScreen.MainScreen.Bounds設置UIWindow對象,以便填充整個屏幕,包括狀態欄佔用的點。您使用UIScreen.MainScreen.ApplicationFrame設置佔用「整個屏幕(但僅限可見部分)」的UIView對象的框架。然後你相對於UIView對象的幾何定位你的按鈕,你不必擔心狀態欄。
我這樣做是通過調整自定義控件框架。類似於
button.Frame = new RectangleF(0, _statusBar.Frame.Bottom, button.Frame.Width, button.Frame.Height);
你把系統狀態欄變成一個變量(你的例子中的'_statusBar')是什麼? – patridge 2011-04-19 18:37:10
UIApplication.SharedApplication - 有一些屬性。其中之一是StatusBarFrame。 – Scarlaxx 2011-04-27 15:51:05