我有一個應用程序橫向運行。我已經使用下面的代碼來使它在iOS 8上工作。此代碼完美地適用於所有設備的模擬器。但是,當我在iPhone 5設備上運行它時,佈局是錯誤的。在閱讀了其他一些關於這裏和其他地方的問題後,我相信屏幕邊界在橫向模式下運行時已經在iOS 8上交換了,但似乎並非總是如此。iOS 8屏幕邊界設備和橫向模擬器的不同設置
CGRect screenBound = [[UIScreen mainScreen] bounds];
CGSize screenSize = screenBound.size;
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"8.0"))
{
ScreenHeight = screenSize.width;
ScreenWidth = screenSize.height;
}
else
{
ScreenHeight = screenSize.height;
ScreenWidth = screenSize.width;
}
爲什麼模擬器在做一些與設備完全不同的事情?這是否僅影響iPhone 5或所有iPhone/iPad?我無法訪問運行不同iOS版本的所有設備,因此依靠模擬器來提供準確的結果。
有沒有更可靠的方法來實現這個?