围绕居中的UIView约束多个UIView

时间:2018-01-08 02:16:57

标签: ios swift autolayout

我正在尝试学习自动布局/约束,但对于我的生活,我无法找到解决问题的方法。我有几个按钮围绕着一个' main'按钮。我希望布局保持不变,并根据设备自动调整大小以保持在超视图的中心。我一直在阅读和尝试,还没有到达任何地方。任何帮助将不胜感激。

目前我并不担心景观,但如果有人愿意详细说明那就太棒了。

我可以阅读的任何参考文献或视频也都很棒。

谢天谢地

示例布局:

enter image description here

1 个答案:

答案 0 :(得分:0)

我可以提供一些建议。

  1. 首先,您所有的视图和按钮应该具有相对于您正在使用的设备的屏幕尺寸的比例宽度和高度,因此它在不同设备上看起来很不错。
  2. 其次,除了宽度和高度限制之外,您的中间“主”按钮还将具有您UIViewControllers's视图的中心X以及中心Y,因此您可以将其固定在中间。这很重要,因为其他6个按钮将相对于此主按钮固定。
  3. 让我们从其他按钮开始,特别是主按钮上方的按钮和主按钮下方的按钮。这两个按钮也有宽度和高度限制。现在,横向上,你有两个选择 - 因为这些人总是在屏幕的中间,你可以将他们的centerX与主按钮对齐,或者与UIViewController的视图本身对齐 - 只要它在中间就没关系。最后,我们必须考虑与主按钮的垂直距离。这些距离应与屏幕的总高度成比例,以便在所有设备上看起来都很好。您将从顶部按钮的底部添加约束到中间按钮的顶部。对于底部按钮,您将从底部按钮的顶部添加约束到中间按钮的底部。
  4. 现在对于其他4个按钮,除了它们将具有的高度和宽度限制之外,您应该将水平约束限制在顶部和底部中间按钮,然后垂直约束到主按钮。