AutoLayout的按钮位于彼此之上

时间:2015-10-06 17:56:02

标签: ios objective-c ipad autolayout

我对iPad应用程序中的UIButtons有限制,因此顶行按钮与UIImageView保持一定距离,因此底行按钮保持固定在靠近底部的位置。然而,当我旋转时,它完全错了。以下是纵向和横向时的图像。考虑到景观模式中垂直房地产的数量较少,如何解决这个问题?

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

您需要在旋转时缩放子视图的大小,或使用滚动视图。

因为您将按钮定位在离屏幕底部一定距离处而不是保持一致的间距,所以当没有足够的空间时它们会重叠。 (我假设从截图中看出它突破了2行按钮之间的约束,假设有一行)

您可以将每行按钮的可用空间与主视图的总垂直尺寸相关联。例如,让图像占总垂直空间的50%,每行按钮占25%(我会为每行设置容器视图,然后向容器添加约束)。确保您的图像/按钮正确缩放并保持其纵横比。

另一个选项可能是识别视图何时旋转,并修改所有约束,以便您的按钮全部布局在一行中,但这可能需要相当多的编码来交换/更改大多数约束。 / p>