增加 UIStackView 中 UIButton 的面积

Increase area of UIButton in UIStackView

我在 UIStackView 中嵌入了几个 UIButton。我知道 UIStackView 在布局时只采用 UIButton 的固有大小。但是我想在 UIStackView 中增加 UIButton 的 height/width。没有 UIStackView,我可以轻松地增加或减少 UIButtons 框架大小。 UIStackView 是怎么回事?

详细信息:假设我给了 3 个只有 UIImages 而没有文本的 UIButton。按钮 1 为 80x80,按钮 2 图像为 30x30,按钮 3 图像为 30x30。我希望按钮 2 和 3 的触摸区域在不拉伸图像的情况下至少为 45x45。当它不在 UIStackView 中时,我可以像这样简单地调整 UIButton 的大小。但是对于 UIStackView,所有按钮的大小都是图像的大小(固有大小),我不知道如何修复。

如果您将 width/height 约束添加到按钮堆栈视图,将根据约束而不是按钮的固有大小来调整其子视图的大小。

为此我通常使用contentEdgeInsets 属性。如果还不够,您需要添加一些自动布局约束。