StackView没有伸展,拥抱内容

时间:2016-09-06 18:19:19

标签: ios autolayout uistackview

我遇到了一个UIStackView的问题,它不会延伸到超级视图边界。 我已经为stackView添加了约束,用左边距和右边距填充它的superview。但不是这样做,而是将其调整为内容大小。我已将distribution设置为.equalSpacing,将axis设置为.horizontal

enter image description here

在一个只有stackView的测试项目中,它运行正常(尽管在我的实际项目中我正在代码和IB中的测试项目中进行)。 这里正确地忽略了内容视图的约束,并且stackView占用了superview的空间

enter image description here

我尝试更改contentViews和stackView的contentHugging但没有改变。任何帮助都非常感谢:)

1 个答案:

答案 0 :(得分:0)

我自己发现了,问题是stackView在UIScrollView中,一旦stackView扩展了屏幕边界,就可以滚动它。由于向scrollView的子视图添加约束确实与scrollView的contentSize而不是框架相关,因此无法正确解析约束。

我最终在didMoveToSuperview()

中为超级视图添加了约束

希望这可以帮助某人:)