Interface Builder 在每次操作后水平折叠垂直堆栈视图并返回

Interface Builder is collapsing vertical stack view horizontally and back after each action

我正在 Interface Builder 中设计一个视图控制器并有一个堆栈视图。在执行任何操作后(例如将任何对象移动一点点,或将约束更改 1px),整个堆栈视图会水平折叠,从而弄乱所有布局。然后,当我采取任何其他操作时(例如,更改另一个约束,甚至是相同的约束,都没有关系),它会恢复到原来的正确布局。

这是正确布局的屏幕截图:

这是相同的视图,只是在字面上进行了更改 anything:

当我再次更改任何内容时,它会得到修复(恢复到正确的布局),而当我更改其他内容时又会变得一团糟,永远如此。检查器中没有任何自动布局问题。另外,出现这个问题后,我将所有视图的拥抱和压缩阻力约束都设置为1000,但无济于事。这可能是什么原因造成的?我在 Xcode 9.2.

发布这篇文章后,我注意到了一些事情:

如果我给出首选的显式宽度(任何大于零的值,无论是 1 还是 10000 都无所谓),问题就会消失:

虽然我仍然不知道为什么它在每次操作后折叠整个堆栈视图。

不过,它解决了这个问题。