在不使用自动布局的情况下调整 iPhone 5 屏幕尺寸
Posted
技术标签:
【中文标题】在不使用自动布局的情况下调整 iPhone 5 屏幕尺寸【英文标题】:Adjust iPhone 5 Screen Size Without Using Autolayout 【发布时间】:2012-10-05 20:48:20 【问题描述】:在 .xib 或 .storyboard 中启用自动布局并添加 640 像素 x 1136 像素的初始屏幕可启用 iPhone 5 分辨率支持更高的屏幕。
但是,这样做后,我的应用开始显示一些有趣的东西,我认为自动布局不是一个好主意。
我想知道是否有办法启用 iPhone 5 设备支持,即在不使用自动布局的情况下修复应用程序的分辨率?也许我可以在代码中设置?
如果是,那么我将不需要创建 2 个故事板或 nib 来支持 ios5 和 iOS6。
【问题讨论】:
【参考方案1】:如果您之前没有使用过 Autolayout,则无需使用它来支持 iPhone 5。
当您将界面组合在一起时,您只需要检查您的绑定,并在较高的手机尺寸和常规手机尺寸之间切换,如下所述: Xcode Storyboard displaying the new iPhone 5 screen size?
如果您的屏幕在两种屏幕尺寸下看起来都不错,那么您就完成了。
如果您要编写大量代码来显示您的 UI,那么您将有更多工作要做。
【讨论】:
【参考方案2】:几周前我找到了一个很好的答案(下面的链接)。您将复制并粘贴旧 iPhone 故事板,将其重命名以反映 iPhone 5,然后按下位于布局网格底部的扩大屏幕尺寸的按钮。可能需要进行一些小的编码调整,但此示例代码在 AppDelegate 中用于检测正在运行的设备,从而检测要使用的 Storyboard。你只需要复制你的界面,但是这些 GUI 更改可以在没有代码和 AutoLayout 的情况下进行(还需要注意的是,AutoLayout 删除了 iOS 5 和更低版本的兼容性)
xcode 4.5 how to pick storyboards at launch
【讨论】:
以上是关于在不使用自动布局的情况下调整 iPhone 5 屏幕尺寸的主要内容,如果未能解决你的问题,请参考以下文章
如何在不使用自动布局的情况下以 XIB/故事板大小查看手机尺寸
调整 UIButton 宽度/高度 (iOS) - 如何在不禁用自动布局的情况下解决?
具有自动布局的多行UILabel,如何在不更改标签框架的情况下根据内容调整字体大小?