约束优先于调整一个堆栈的大小而不是另一个,您如何更改此首选项? (xCode)

问题描述 投票:1回答:1

我正在尝试将xCode中的约束用于自动布局,但遇到了问题。这里显示的是应用程序的当前布局:Current Layout。我有两个堆栈,一个在顶部,一个在底部。我已限制将顶部堆栈的位置粘贴到顶部,左侧和右侧的安全区域,并已将底部堆栈的位置粘贴到底部,左侧和右侧的安全区域。我现在想将顶部堆栈限制为等于底部堆栈上方的一些小间距,并在必要时仅拉伸Top Stack,并使Bottom Stack保持完全静止。相反,我正相反,Bottom Stack冲上去迎接Top Stack。 xCode如何选择使底部堆栈而不是顶部伸展,我该如何解决?

这里是一张gif,显示了我遇到的问题。请注意,我已经在底部将“底部堆栈”设置为“分布式”,因此它最初似乎没有伸展,但是一旦我从底部切换到填充位置,您很快就会看到问题:Constraint Problem Gif

谢谢。

ios xcode autolayout
1个回答
0
投票

您正在寻找的自动布局方面是contentHuggingPriority和contentCompressionResistancePriority。这些确定哪些视图更可能拉伸或压缩。

将下部堆栈的垂直contentHuggingPriority增加到大于顶部堆栈的垂直contentHuggingPriority,然后自动布局系统将使顶部堆栈伸展。

© www.soinside.com 2019 - 2024. All rights reserved.