Swift 自动布局问题

Swift 自动布局问题,swift,autolayout,constraints,Swift,Autolayout,Constraints,我试图得到一个布局工作,我有9个广场设置3 x 3和所有设备大小,他们是正方形 我尝试了无数的想法来让它工作,但似乎无法让它在所有设备上保持方形 我在下面附上了一张图片,显示了左上角正方形上的结果和当前约束 任何帮助都会很棒 最好的方法是使用stackView。这样做的好处是,您不必处理太多的约束。因此,水平选择前三行视图,然后单击嵌入堆栈按钮,其轴应在故事板内水平。对第二行和第三行执行相同的操作。在stackview中,您还可以提及所需的间距 现在,所有三行都有三个stackView。之后,选

我试图得到一个布局工作,我有9个广场设置3 x 3和所有设备大小,他们是正方形

我尝试了无数的想法来让它工作,但似乎无法让它在所有设备上保持方形

我在下面附上了一张图片,显示了左上角正方形上的结果和当前约束

任何帮助都会很棒


最好的方法是使用
stackView
。这样做的好处是,您不必处理太多的约束。因此,水平选择前三行视图,然后单击
嵌入堆栈
按钮,其轴应在故事板内水平。对第二行和第三行执行相同的操作。在
stackview
中,您还可以提及所需的间距

现在,所有三行都有三个
stackView
。之后,选择所有三个
堆栈视图
,然后单击
嵌入堆栈
按钮,其轴应垂直,您可以提及所需的间距


这样做的好处是您不必担心约束。最后,您只需在主
堆栈视图
上应用约束,该视图包含所有子
堆栈视图

最好的方法是使用
堆栈视图
。这样做的好处是,您不必处理太多的约束。因此,水平选择前三行视图,然后单击
嵌入堆栈
按钮,其轴应在故事板内水平。对第二行和第三行执行相同的操作。在
stackview
中,您还可以提及所需的间距

现在,所有三行都有三个
stackView
。之后,选择所有三个
堆栈视图
,然后单击
嵌入堆栈
按钮,其轴应垂直,您可以提及所需的间距


这样做的好处是您不必担心约束。最后,您只需在主
stackView
上应用约束,该主
stackView
包含所有子
stackView

虽然我完全同意
UIStackView
是一个很好的选择,但您也可以添加
纵横比
约束(使用
乘数
为1)并确保它们保持正方形(因为当前布局没有要求视图为正方形)


如果您想让9个正方形保持在superview的中心,我建议将它们添加到一个不可见的中间视图中,并将其置于superview的中心。

虽然我完全同意
UIStackView
是一个很好的选择,但您也可以添加
纵横比
约束(使用
乘数
为1)并确保它们保持正方形(因为当前布局没有要求视图为正方形)


如果您希望9个正方形保持在superview的中心,我建议将它们添加到不可见的中间视图中,并将其置于superview的中心。

您应该使用stackViewUse
纵横比
约束与乘数(1:1)您应该使用stackViewUse
纵横比
约束与乘数(1:1)太棒了,谢谢你提供的信息,我将查看堆栈视图并遵循这些步骤!当然,使用起来非常简单。谢谢你提供的信息。我将查看堆栈视图,然后按照这些步骤操作!当然可以,而且使用起来非常简单