【发布时间】:2019-12-20 07:12:05
【问题描述】:
我有一个 UIStackView 但是,subViews 的第一个视图是 UILabel,它没有相应地调整大小。
我的代码如下;
private let stackView: UIStackView = {
let view = UIStackView()
view.translatesAutoresizingMaskIntoConstraints = false
view.axis = .horizontal
view.distribution = .fillProportionally
view.alignment = .trailing
view.spacing = 8
return view
}()
当然,我在init 中添加我的subViews,如下所示;
stackView.addArrangedSubview(currentBidLabel)
stackView.addArrangedSubview(seperator)
stackView.addArrangedSubview(adCreatedAtLabel)
stackView.addArrangedSubview(moreButton)
我目前的结果如下图所示;
我要找的结果如下;
- 红色 = 动态标签宽度(与蓝色相同)
- 绿色 = 固定宽度
- 蓝色 = 填充剩余空间
- 青色 = 固定宽度
【问题讨论】:
-
horizontal 堆栈视图不符合
.trailing对齐方式。相反,您应该使用.fill/.top/.center/.bottom。您是否需要 AED 400 和 1d 前 两个标签占用相同的宽度? -
当我按比例填充时,我将视图粉碎成 0 宽度...
标签: ios swift nslayoutconstraint stackview