我有第一代 iPad Mini ( Model A1432 ),屏幕分辨率为 1024x768 ( documentation )。
我的应用程序中有以下代码:
CGRect screenBounds = [[UIScreen mainScreen] bounds];
CGFloat screenScale = [[UIScreen mainScreen] scale];
CGSize screenSize = CGSizeMake(screenBounds.size.width * screenScale, screenBounds.size.height * screenScale);
screenSize.height 和 screenSize.width 报告:2048x1536,这是错误的。 screenScale 值是 2,但我的理解是视网膜屏幕应该只有 2,第一代 iPad Mini 不是。
知道为什么会发生这种情况吗?我正在尝试在我的应用程序中使用代码来确定运行时的屏幕分辨率,因为我正在为增强现实应用程序进行像素操作。
非常感谢您的帮助。
最佳答案
经过评论中的讨论...!
如果您在 iPad 上运行仅适用于 iPhone 的应用程序,它将模拟视网膜设备并报告 2.0
的比例。我们知道(从上面!)iPad mini(第 1 代)和运行 iOS 7 的标准 iPad 2 一样。
这是 introduced in iOS 7 .
需要注意的好陷阱!
关于ios - 为什么我的 iPad Mini 在 iOS 中代表屏幕尺寸的刻度是错误的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23328110/