2012-07-07 130 views
0

我不敢相信這是不可能的。這只是每個人都必須要求的事情之一。如何找出縱向或橫向的屏幕方向?

所以,這樣的:

[UIScreen currentScreen] bounds]; 

在我的iPhone返回320的寬度,無論手機是否是縱向還是橫向。所以我做了這個輔助方法:

+(CGRect)screenFrame { 

    CGRect frame = [UIScreen mainScreen].bounds; 

    if (UIDeviceOrientationIsPortrait([[UIDevice currentDevice] orientation])) { 
     return frame; 
    } 
    else { 
     CGRect newFrame = CGRectMake(frame.origin.x, frame.origin.y, frame.size.height, frame.size.width); 
     return newFrame; 
    } 

} 

當設備平放除了偉大的工程,顯然這使得它認爲這是在景觀,即使屏幕不改變爲橫向。

我該如何調整它才能讓它工作?

回答

3

最好的指導(主要是因爲'鋪設平面'的方向)是使用[[UIApplication sharedApplication] statusBarOrientation]。這會根據應用程序如何調整主窗口的座標變換矩陣給出正確的值。

相關問題