2010-08-08 71 views
2

這是一個奇怪的問題,因爲我肯定有項目工作正常,可能是因爲我一直在做不同的事情。但現在我很困惑。爲什麼我的iPad應用程序不能在開箱即用的橫向模式下「開始」?

我使用Xcode(3.2.3 fwiw)創建一個新的基於View的iPad應用程序。這讓我成爲一個默認視圖控制器,它具有一個默認視圖,該視圖在啓動時被取消存檔和顯示。

當我在模擬器處於橫向模式時啓動應用程序時,我期望默認視圖的大小爲1024寬。但它不是 - 如果我只是一個行添加到默認的項目:

// Implement viewDidLoad to do additional setup after loading the view, typically from a nib. 
- (void)viewDidLoad { 
    [super viewDidLoad]; 
    NSLog(@"width: %f", [[self view] bounds].size.width); // add this line 
} 

我可以看到寬度爲768,應用程序無論是在肖像或風景模式啓動。開箱即用,該默認視圖的autoresize掩碼應該重新佈局以適合容器。當我以橫向模式啓動時,爲什麼不是1024這個數字?我知道這在我有的其他項目中有效,但我對它的區別感到困惑。我錯過了什麼?

謝謝!

回答

2

viewDidLoad在視圖從xib載入後立即被調用,然後它被旋轉到初始設備方向。試試這個:

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation { 
    NSLog(@"rotated to width: %f", self.view.bounds.size.width); 
} 
+0

Oy。謝謝。在調試過程中,我被一隻紅色鯡魚分散注意力,最後通過創建這個虛擬項目來發現自己瘋了,最終迴歸到了基礎知識。感謝您的轉向。 – 2010-08-08 16:20:44

相關問題