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