2012-02-13 84 views
0

我經歷別人的代碼,試圖確定爲什麼他們的故事板出去的方向控制翻轉內..self.view不可見的座標

莫代爾塞格斯從視圖控制器到另一個視圖控制器。所述SEGUE標識符被定義和正確調用:

self performSegueWithIdentifier:@"identifiername" sender:self]; 

如果取向是標準.. self.view.frame.origin.x和y是0,0。如果你把它翻轉到景觀..你得到-20,1280?沒有什麼是使用CGRects以編程方式定義的,所有標準方向在沒有變化的情況下返回true。

有沒有人有任何想法?

+0

如何(NSLog()?)和從哪裏(什麼方法)你得到幀的起源? – NJones 2012-02-13 18:42:45

+0

當調用視圖控制器時,檢查viewdidload方法的原點。在風景中,self.view.frame.origin.x的NSLog = -20和-1280。標準人像是0,0。更新也是荒謬的.. – DJPlayer 2012-02-13 18:54:22

回答

0

顯然,我會通過該項目查看任何奇數呼叫setFrame:。但是,對於self.view.transform =,應用變換(如變換縮放)會影響幀。你也可以檢查你的界限,我懷疑你的觀點的界限是正確的,但檢查從不傷害。

您也可以輕鬆登錄一個CGRect這樣的:

NSLog(@"%@",NSStringFromCGRect(self.view.bounds)); 

好獵手。

+0

不幸的是,大多數這是在故事板上的IB中完成的。編碼實際上非常小巧。只需逐步重新創建IB中的元素,並查看問題來自哪裏。談談頭痛... – DJPlayer 2012-02-13 19:54:37