Ios 紧凑型<--&燃气轮机;通过旋转进行常规大小更改=以编程方式使用自动布局时无法同时满足约束

Ios 紧凑型<--&燃气轮机;通过旋转进行常规大小更改=以编程方式使用自动布局时无法同时满足约束,ios,swift,Ios,Swift,我以编程方式定义了四个按钮,并将它们添加到UIStackview名称“finalStack”中。在旋转过程中,我能够成功更改finalStack方向,但在调整中心定位值后无法移动它。在控制台中,我有一些错误,指出我未能删除前面的约束。我取消激活约束的代码是否不正确,或者我是否遗漏了其他内容?if/else语句中的两个print语句告诉我,在旋转设备后,我正确地命中了相应的代码块 模拟器正在使用iphonexr 与此同时,我正试图遵循这些建议,并尝试实现符号断点,但这一主题正成为我的另一项主要任务

我以编程方式定义了四个按钮,并将它们添加到UIStackview名称“finalStack”中。在旋转过程中,我能够成功更改finalStack方向,但在调整中心定位值后无法移动它。在控制台中,我有一些错误,指出我未能删除前面的约束。我取消激活约束的代码是否不正确,或者我是否遗漏了其他内容?if/else语句中的两个print语句告诉我,在旋转设备后,我正确地命中了相应的代码块

模拟器正在使用iphonexr

与此同时,我正试图遵循这些建议,并尝试实现符号断点,但这一主题正成为我的另一项主要任务。如果您能深入了解这两个主题,我将不胜感激

}

 override func viewDidLoad() {
    super.viewDidLoad()
    view.backgroundColor = UIColor.red
    finalStack.addArrangedSubview(buttonOne)
    finalStack.addArrangedSubview(buttonTwo)
    finalStack.addArrangedSubview(buttonThree)
    finalStack.addArrangedSubview(buttonFour)
    view.addSubview(finalStack)
}


override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
    super.traitCollectionDidChange(previousTraitCollection)

    let compactContraints = [
        finalStack.centerXAnchor.constraint(equalTo: view.centerXAnchor),
        finalStack.centerYAnchor.constraint(equalTo: view.centerYAnchor),
        buttonOne.widthAnchor.constraint(equalToConstant: 100),
        buttonOne.heightAnchor.constraint(equalToConstant: 100),
        buttonTwo.widthAnchor.constraint(equalToConstant: 100),
        buttonTwo.heightAnchor.constraint(equalToConstant: 100),
        buttonThree.widthAnchor.constraint(equalToConstant: 100),
        buttonThree.heightAnchor.constraint(equalToConstant: 100),
        buttonFour.widthAnchor.constraint(equalToConstant: 100),
        buttonFour.heightAnchor.constraint(equalToConstant: 100),
        ]

    let regularConstraints = [
        finalStack.centerXAnchor.constraint(equalTo: view.centerXAnchor),
        finalStack.centerYAnchor.constraint(equalTo: view.centerYAnchor, constant: -100),
        buttonOne.widthAnchor.constraint(equalToConstant: 100),
        buttonOne.heightAnchor.constraint(equalToConstant: 100),
        buttonTwo.widthAnchor.constraint(equalToConstant: 100),
        buttonTwo.heightAnchor.constraint(equalToConstant: 100),
        buttonThree.widthAnchor.constraint(equalToConstant: 100),
        buttonThree.heightAnchor.constraint(equalToConstant: 100),
        buttonFour.widthAnchor.constraint(equalToConstant: 100),
        buttonFour.heightAnchor.constraint(equalToConstant: 100),
        ]


    if traitCollection.verticalSizeClass == .compact {
        finalStack.axis = .horizontal
        print("vertical class = compact")
        NSLayoutConstraint.deactivate(regularConstraints)
        NSLayoutConstraint.activate(compactContraints)
    } else if traitCollection.verticalSizeClass == .regular{
        finalStack.axis = .vertical
        print("vertical class = regular")
        NSLayoutConstraint.deactivate(compactContraints)
        NSLayoutConstraint.activate(regularConstraints)
    }
}