我想让我的StackView在屏幕上居中,并在每侧(左右)增加20的边距以在屏幕上留出边距:

ios - 快速右填充/尾部未考虑-LMLPHP

但未考虑左边距:
ios - 快速右填充/尾部未考虑-LMLPHP

结果如下:

ios - 快速右填充/尾部未考虑-LMLPHP

如何处理正确的保证金?其他类型的对象(不是StackView)也有同样的问题。

最佳答案

确保仅使用为视图建立框架所需的最少数量的约束。例如:

  • 前导约束和宽度约束
  • 尾随约束和宽度约束
  • 中心X约束和宽度约束
  • 前导约束和尾随约束

  • 错误的例子是:
  • 中心X约束和尾随约束(未指定前沿应到达的位置)
  • Center X约束&前导约束&尾随约束(超出必要的约束,另外,除非前导约束和尾随约束相等,否则它们将与居中
  • 冲突

    我看到的另一件事是,您对顶部/底部/高度(垂直轴)没有任何限制,因此Interface Builder警告您没有足够的限制来正确放置视图。确保在Interface Builder中没有红色错误或红色约束,否则布局未定义或不明确。

    关于ios - 快速右填充/尾部未考虑,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38515768/

    10-10 12:52