因此,随着今天iPhone 5的发布和更大的屏幕高度,我们如何在我们的应用程序中适应不同iPhone版本的不同屏幕尺寸。我知道没有为iPhone 5更新的应用程序将是“信箱”,但是向后兼容性呢?
有没有办法检查应用是否在iPhone 3,4或5上运行?
答案 0 :(得分:6)
您通常不需要,因为检查硬件不是正确的方法。
如果您需要根据屏幕尺寸在应用中做出决定,例如适应用户界面的屏幕尺寸,则应该...... 测试屏幕尺寸,而不是在硬件上做出某些条件。始终测试真正需要的东西。
使用[UIScreen mainScreen].bounds
(就像你应该做的那样)。请注意,即使在iPhone 5之前,人们也可以将iPhone插在视频投影仪或外部屏幕上,并在不同于iPhone的分辨率的屏幕上显示其应用程序。这就是为什么我希望你从不在你的代码中使用魔术数字(如果你这样做,你知道为什么它现在很糟糕;))并且已经在使用常量或在运行时询问屏幕的大小。
无论如何,为了适应不同的屏幕尺寸,如果您在视图中正确配置了自动调整大小,您的应用程序将自动调整大小。您只需提供 Default-h568@2x.png
启动图片,您的应用就会占用4英寸屏幕的全部尺寸。
此外,启动iOS6后,您可以使用 AutoLayout 对视图进行更精细的约束布局。请参阅WWDC'12视频会话,详细解释它。
答案 1 :(得分:2)
查看UIDevice-Hardware扩展程序,它最近更新后添加了对iPhone 5的支持。