我有一个应用程序横向运行。我已经使用下面的代码来使它在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版本的所有设备,因此依靠模拟器来提供准确的结果。
有没有更可靠的方法来实现这个?