【问题标题】:Vertically center view between two others在其他两个之间垂直居中视图
【发布时间】:2017-05-30 10:38:17
【问题描述】:

我想知道如何使用约束将一个对象垂直居中于另外两个对象之间。我使用故事板。标签和按钮具有使用自动布局的约束(标签:顶部、前导、尾随、高度;按钮:底部、前导、尾随、纵横比)。

这就是所有的样子:

我希望约束 1 和 2(看一下图像)的长度相同,以便“视图”在“标签”和“按钮”之间垂直居中。在较小的屏幕尺寸中,放置具有相同高度的隐藏视图对我不起作用。 谢谢!


PS:一件重要的事情是:我希望视图居中,并且不是所有元素都等距!

【问题讨论】:

  • Nishant 答案即使对于可变标签和按钮大小也适用。但在您的情况下,标签和按钮具有恒定的高度。所以添加垂直中心约束,然后调整它的常量以匹配中心就可以了。在这种情况下,常量值 = (标签顶部空间 + 高度) - (按钮底部空间 + 高度) / 2。这样可以避免多出一个视图。

标签: ios swift autolayout constraints


【解决方案1】:

采用顶部约束 0 到顶部视图(标签)和底部约束 0 到底部视图(按钮)的透明视图。现在将要垂直居中的视图添加到两个视图中。并将其作为水平和垂直中心的约束添加到父视图。

【讨论】:

    【解决方案2】:

    您可以在此处尝试 stackview。将所有项目放入堆栈视图并提供相等的间距

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-01
      • 1970-01-01
      • 2017-10-10
      • 2013-05-06
      相关资源
      最近更新 更多