如何处理iPhone 4s,5和6屏幕尺寸,并使所有内容在设备上看起来相同

我正在使用Xcode 6.1,在我的一个视图中,包含许多标签。 但是,这些标签在每个不同的设备中看起来不同。 虽然我已经为所有标签添加了约束,但仍面临同样的问题。

如何在所有设备上获得相同的视图布局? 如何使每个标签的宽度和高度灵活,取决于屏幕尺寸? 我是否需要为每个设备设计不同的xib?

以下图像显示了结果,启用了自动resize,并添加了常量。

在iPhone 6上 在此处输入图像描述

在iPhone 5上

在此处输入图像描述

在iPhone iOS 7.1上 在此处输入图像描述

我们提供了一个简单的解决方案。 使用宽高比约束,我们可以在所有设备屏幕中获得相对外观。

我有同样的问题,我发现了这个>> http://mathewsanders.com/designing-adaptive-layouts-for-iphone-6-plus/

因此,在设计从最低到最高的屏幕分辨率时,我们无法为所有控件设置特定的宽度和高度,因为它可能看起来很奇怪。 因此,使用此约束,我们可以对所有屏幕进行相对查看。

如果您不想使用约束或想要保持相同的宽度和高度,可以添加scrollview来保存所有控件。 为此,您可以为具有固定内容大小的scrollview设置resize框架。

解决这个问题……

1)转到xib文件并取消选中“自动”布局

在此处输入图像描述

2)然后以下列方式为每个子视图手动设置自动调整。

在此处输入图像描述

使用self.view.bounds.size.width获取屏幕宽度,然后使用相对值初始化所有标签。

一个灵魂是你可以为每个屏幕大小设计一个故事板,如iphone 5,一个用于iphone 6,一个用于iphone 6+,在你的AppDelegate方法“didFinishLaunchingWithOptions”你可以获得屏幕大小和弹出相应的故事板你可以根据不同的屏幕尺寸设置不同的约束