防止UIStackView中的内部内容大小

时间:2015-08-29 13:05:25

标签: ios9 xcode7 uistackview

我从一个空的垂直堆栈视图和一个大于其内在内容大小的按钮开始。将按钮拖动到堆栈视图中会导致其更改为其内部内容大小。解决这个问题的方法是在按钮标题之前和之后添加空格 有更好的方法吗?

我想要的是堆栈视图中的按钮如下所示: button inside stack view

不是这样的: button inside stack view

是的,您可以对Button的长度设置约束,但我不想这样做。 UIStackView的想法是让它为你处理必要的约束。

1 个答案:

答案 0 :(得分:1)

虽然这可能不是一般意义上的最佳方式,但对于您的特定用例,您可以设置按钮的contentEdgeInsets

self.myButton.contentEdgeInsets = UIEdgeInsetsMake(8.0, 8.0, 8.0, 8.0);

这仍将使用 intrinsicContentSize ,但它会为您提供所需的填充。如果你想要一个精确的宽度而不管按钮的标题,那么这对你来说不是一个合适的解决方案。