如何在应用程序上设置自动缩放(针对 iPhone 6 的 4.7 英寸屏幕进行了优化)以适应 iPhone 5 和 4 的屏幕?

Posted

技术标签:

【中文标题】如何在应用程序上设置自动缩放(针对 iPhone 6 的 4.7 英寸屏幕进行了优化)以适应 iPhone 5 和 4 的屏幕?【英文标题】:How to set auto-scaling on an app (optimized for iPhone 6's 4.7 inch screen) to fit iPhone 5 and 4's screen? 【发布时间】:2015-03-03 04:39:16 【问题描述】:

我看到旧的 ios 应用程序自动缩放以适应 iOS 8 上的 iPhone 6/6+ 的大屏幕。我最近开发了一个应用程序,该应用程序经过优化以在 iPhone 6 的 4.7 英寸屏幕上显示。应用自动布局会做很多工作,因为很多视图都是以编程方式创建的,所以我想知道是否可以让应用自动缩放以适应较小的屏幕?

【问题讨论】:

如果您想以编程方式执行,您需要将所有视图与其框架相关联。您需要将例如 uilabel 宽度设置为与一般屏幕宽度([uiscreen mainscreen]bounds].size.width) 相关。否则你需要通过 xib 使用 sizeclasses。 自动布局您如何让应用适应不同的屏幕尺寸。如果您不想使用 Interface Builder,可以通过编程方式设置约束 @Paulw11 使用自动布局是唯一的方法吗?对于我的应用,创建另一个 xib 比将自动布局应用于当前 xib 要容易得多。 自动布局是根据您的问题“自动缩放”的方式。您可以编写一些/很多特殊情况代码来处理不同尺寸的屏幕,当 Apple 发布带有 32 英寸屏幕的 iPhone 7 时,您必须再做一次......没有简单的“在 iPhone 上使用这个 xib 文件” 4、在iPhone5上使用这个...”设置 【参考方案1】:
    在代码中使用自动布局 重构代码以支持不同的屏幕尺寸 重构代码以将视图大小调整为屏幕大小的百分比

【讨论】:

以上是关于如何在应用程序上设置自动缩放(针对 iPhone 6 的 4.7 英寸屏幕进行了优化)以适应 iPhone 5 和 4 的屏幕?的主要内容,如果未能解决你的问题,请参考以下文章

如何在没有缩放模式的 iPhone 6 上显示 iOS 应用程序

iphone 6 和 6 plus 尺寸缩放

我可以将 iOS 图形 API 设置为专门针对 iPhone 6s 的“OpenGLES2”,而将其他所有内容设置为自动吗?

仅针对 Android 设备关闭网站缩放 [重复]

较小的 MapKit 缩放间隔 iPhone

调整为 Iphone 6 设计的应用程序大小以在 iphone 5s 中正确缩放