效果图例子一:cell里面三个Label ,cell高度由最高的决定。
要点:放在StackView里面这样他会根据最高的来计算,设置StackView的约束这样能自动计算高度,设置Label 的preferredMaxLayoutWidth 这样能帮助计算StackView的布局方便cell自适应高度。
StackView约束设置 设置preferredMaxLayoutWidth效果图例子二:宽度根据数量均分,呈阶梯状,整体高度根据所有的高度计算
要点,同样一个外层StackView 垂直分布,里面每行一个StackView水平分布,等比例分布,最后把空白的地方用View填充,也可以用UILayoutGuide替代。
注意:UIStackView里面删除并不是真正的删除,如果子View从父视图删除是真正删除。
第三个例子:看效果图吧,思路也是,外层一个UIStackView 里面三个UIStackView,利用自身增减特性实现。外层的约束大于等于0可以实现自身增减时候绿色Label不能超过灰色的View。
效果图 层级结构和约束
网友评论