iOS中不同方向的布局

iOS中不同方向的布局,ios,ipad,autolayout,landscape-portrait,Ios,Ipad,Autolayout,Landscape Portrait,我目前正在编写iPad应用程序。我对自动布局很陌生,我有一个看起来应该很直接的页面,但我就是不能让它在纵向和横向上看起来都正确 有三个部分:顶部的图像、中间附近的标签和文本字段以及底部的按钮。在纵向和横向两个方向上,我需要三个部分占据大部分垂直空间,在两个部分之间有均匀的填充。显然,在横向模式下,填充物必须收缩,但只要它们仍然成比例,就可以了。请看下面的图片 我正在寻找一些关于如何使用自动布局(或任何其他真正的)来实现这一点的建议 如果很难读懂,箭头所出的单词是“相同的”。我只是想指出各部分之间

我目前正在编写iPad应用程序。我对自动布局很陌生,我有一个看起来应该很直接的页面,但我就是不能让它在纵向和横向上看起来都正确

有三个部分:顶部的图像、中间附近的标签和文本字段以及底部的按钮。在纵向和横向两个方向上,我需要三个部分占据大部分垂直空间,在两个部分之间有均匀的填充。显然,在横向模式下,填充物必须收缩,但只要它们仍然成比例,就可以了。请看下面的图片

我正在寻找一些关于如何使用自动布局(或任何其他真正的)来实现这一点的建议

如果很难读懂,箭头所出的单词是“相同的”。我只是想指出各部分之间的距离是相同的,顶部和屏幕顶部之间的距离是相同的,底部和屏幕底部之间的距离是相同的


有很多方法可以实现这一点。一种简单的方法是将
标签
文本
字段括在
ui视图
中,其大小刚好可以将它们括起来。给它一个
centerY
约束,但调整它的常数,将其从
中心向上或向下移动到所需的位置。将图像视图约束到
超级视图
的顶部,将
按钮
约束到
超级视图
的底部。为所有内容设置
centerX
约束。这一切都可以在
InterfaceBuilder

中设置,这可能会起作用,但它不会调整顶部图像的约束,也不会调整底部按钮的约束。在OP的图形中,您将看到沿顶部和底部的约束在两个方向上明显不同。Aaron,您是对的。问题似乎是让系统改变三个部分之间的距离,使它们仍然成比例。所以,如果它们在纵向上都相距300像素,那么在横向上它们应该相距200像素。我甚至不确定使用约束是否可以做到这一点。@user1334007,是的,这是完全可能的,但在代码中这样做会更容易。通过使用乘数和常量参数,可以使纵向和横向的间距不同。