這讓我有點混淆。我知道UIScreen中關於尺寸屏幕的2個屬性,就像在這個問題中使用applicationFrame,而這個屬性使用bounds。Iphone,iPad的屏幕尺寸與編程方式的肖像和ladscape模式
- applicationFrame - 顯示設備的大小減去statusBar。在iPhone中製作一個NSLog,我得到這個值:(x = 0,y = 20,height = 460,width = 320)
- 界限 - 顯示所有大小屏幕。的值是:(X = 0,Y = 0,高度= 480,寬度= 320)現在
,如果我旋轉設備(potrait到ladscape)這將顯示 (的邊界將是所有的相同的值)
- 轉到發揮功能:shouldAutorotateToInterfaceOrientation:x = 0時Y = 20高度= 460寬度= 320
- 返回YES,以便
- 轉到功能:didRotateFromInterfaceOrientation:X = 20 Y = 0他飛行= 480寬度= 300
- 我不知道爲什麼,但是這通一個更shouldAutorotateToInterfaceOrientation和放映時間:X = 20 Y = 0高度= 480寬度= 300(這是一個錯誤?)
我想調整我的視圖到這個新的大小,但如果我得到的CGRect,它會給在didRotateFromInterfaceOrientation正確的大小,高度將是寬度,反之亦然。
有沒有一種很好的方式來美觀地調整我的視圖的大小,而無需手動設置這些值?
你看過autoresizingMask嗎? – dasdom 2011-06-08 14:20:05
你使用UIViewController來顯示你的視圖嗎? – 2011-06-17 19:25:27