Stackview inside 其他 stackview 宽度问题

Stackview inside Other stackview width issue

我在 IB 中创建了一个 Stackview,它具有垂直方向。此堆栈视图与父视图的宽度相等。

现在我以编程方式创建了一个 Stackview,例如

let stackViewHorizontal   = UIStackView()
    stackViewHorizontal.axis  = UILayoutConstraintAxis.horizontal
    stackViewHorizontal.distribution  = UIStackViewDistribution.fillEqually
    stackViewHorizontal.alignment = UIStackViewAlignment.leading
    stackViewHorizontal.spacing = 8
    stackViewHorizontal.translatesAutoresizingMaskIntoConstraints = false
    stackViewHorizontal.leadingAnchor.constraint(equalTo: mainStackView.leadingAnchor,constant:0)
    stackViewHorizontal.trailingAnchor.constraint(equalTo: mainStackView.trailingAnchor,constant:0)

这里的 mainStackView 是一个通过 IB.and 创建的堆栈视图 stackviewHorizo​​ntal 是一个以编程方式创建的堆栈视图。 我将 UILabels 放入 stackViewHorizo​​ntal 中。我预计这将扩展到全长,并且每个 UiLabel 将占据屏幕宽度的 50%,因为 stackview 具有水平轴并且分布是 fillEqually。

但是我有一个水平相邻的 UiLabel。但不占用整个屏幕宽度

我哪里做错了请告知?

激活约束,同时给它一个高度:

    stackViewHorizontal.leadingAnchor.constraint(equalTo: mainStackView.leadingAnchor,constant:0).isActive = true
    stackViewHorizontal.trailingAnchor.constraint(equalTo: mainStackView.trailingAnchor,constant:0).isActive = true

    NSLayoutConstraint.activate([
       stackViewHorizontal.leadingAnchor.constraint(equalTo: mainStackView.leadingAnchor,constant:0), 
       stackViewHorizontal.trailingAnchor.constraint(equalTo: mainStackView.trailingAnchor,constant:0) 
    ])

//

    let stackViewHorizontal   = UIStackView()
    stackViewHorizontal.axis  = UILayoutConstraintAxis.horizontal
    stackViewHorizontal.distribution  = UIStackViewDistribution.fillEqually
    stackViewHorizontal.alignment = UIStackViewAlignment.leading
    stackViewHorizontal.spacing = 8
    self.view.addSubview(stackViewHorizontal) //// add it here 
    stackViewHorizontal.translatesAutoresizingMaskIntoConstraints = false
    stackViewHorizontal.leadingAnchor.constraint(equalTo: mainStackView.leadingAnchor, constant: 0).isActive = true
    stackViewHorizontal.trailingAnchor.constraint(equalTo: mainStackView.trailingAnchor, constant: 0).isActive = true