UIStackView in storyboard forces intrinsic content size
在情节提要中,我已将UIStackView添加到UIView中,并且在UIStackView中添加了具有指定图像的UIImageView。 指定的图像位于XCAsets中,其2X大小为59X60。 UIImageView将其宽度设置为此固有大小,但我希望它的大小为44X44,并且图像要缩放以适合。 但是,在Storyboard中,with和Height设置被禁用,并且对于ImageView和UIStackView也设置为59X60。 我想在UIStackView中以44X44的水平方向堆叠星号中的5个相同的ImageViews。
有想法吗?
更新:似乎向UIStackView添加了高度限制会导致缩放,但是星形会变形。
宽度和高度字段显示为灰色,因为图像视图位于堆栈视图内部。 您必须使用约束来控制堆栈视图的排列子视图的大小。
首先,确保所有五个星形视图的"内容模式"都设置为"纵横比适合":
然后,将所有五个星形视图约束为彼此相等的宽度和高度:
最后,将其中一个星形视图约束为具有恒定的宽度44和恒定的高度44:
如果要在星星之间留出空间,请设置堆栈视图的"间距":
如果要在星星周围进行填充,则可以在堆栈视图之外执行此操作,也可以将堆栈视图的"布局边距"设置为固定常量(并关闭"安全区域相对边距"):