我正在編寫一個iPad應用程序,需要知道用於繪圖目的的視圖的可用區域。視圖被添加到導航控制器中,所以我的狀態欄加上導航控制器都佔用了一定數量的像素。我的應用恰好處於橫向模式,儘管我不認爲這是相關的。狀態欄和導航欄後的可用視圖大小
我能夠在旋轉後使用didRotateFromInterfaceOrientation獲得正確的視圖大小。但我不知道如何在沒有旋轉屏幕的情況下做到這一點。
- (void) didRotateFromInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
[self.view setFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
NSLog(@"drfi %d %d", (int)self.view.frame.size.width, (int)self.view.frame.size.height);
}
^^旋轉後起作用。之前沒有。無法弄清楚如何獲得準確的數字。我真的不想硬接線。
我還需要這個功能,以獨立於設備 - 它應該在新的iPad以及較舊的iPad分辨率上工作。一旦我知道確切的可用區域,我就可以處理擴展問題。爲什麼這麼難?幫幫我!!
您是否有理由在旋轉之前進行此操作?旋轉後,你不能簡單地重畫有問題的視圖嗎? – Tim
是的 - 非常簡單,可能永遠不會有旋轉! – Goblortikus
嘗試在viewDidAppear中執行計算。 –