iOS:使用自动布局缩放不同的屏幕尺寸

时间:2015-04-02 07:49:07

标签: ios objective-c iphone autolayout screen

我正在为iPhone编写应用程序,我正在使用自动布局。我理解@ 1x,@ 2x和@ 3x是如何工作的,但我不明白的是如何使用自动布局处理不同的屏幕尺寸。

如果我想让iPhone 6 +,iPhone 6和iPhone 5上的场景看起来都很好,我需要考虑每部手机的不同尺寸。我不能在所有iPhone上使用相同的图像尺寸(以磅为单位),因为它在较小的手机上看起来太大,或者在较大的手机上看起来太小。我甚至不想想象iPad布局的麻烦。

我该如何解决这个问题?我应该使用约束来使我的所有图像动态缩放吗?这听起来很可行,但我想知道最佳解决方案是什么。

谢谢。我真的很茫然。

2 个答案:

答案 0 :(得分:4)

如果您想保持不同尺寸的比例(例如每个设备中具有相同外观尺寸的图像),您可以使用约束。

我通常做的一个小技巧是:

定义宽高比约束(cmd +单击视图中的开头并在视图中结束):

enter image description here

然后强制您的视图增加宽度或高度(即:定义左侧和右侧的约束)。

这完全取决于您的实际需求,并且约束/代码会因不同情况而异。

答案 1 :(得分:1)

你可以使@ 2x和@ 3x比其@ 1x计数器部分大不成比例,然后使用UIImageView的内在大小让它变得更大以适应不同的屏幕尺寸

我从未尝试过这样的事情,但我没有看到它无法运作的原因