У меня два взгляда. и они были созданы в раскадровке и имеют выходные переменные. (topView и bottomSecondview) Когда я включаю switchState, я хочу, чтобы отображался secondBottomView, а когда я включаю switchstate2, я бы хотел, чтобы появился topView. он работает хорошо, пока я не включу оба переключателя. как только я включаю оба переключателя (что означает, что должны отображаться оба представления), я вижу это в консоли: Невозможно одновременно удовлетворить ограничения. Я не уверен, в чем конфликт. Пожалуйста, помогите мне.
if UserDefaults.standard.bool(forKey:"switchState") == true && UserDefaults.standard.bool(forKey: "switchState2") == false {
topView.isHidden = true
secondBottomView.isHidden = false
secondBottomView.translatesAutoresizingMaskIntoConstraints = false
secondBottomView.topAnchor.constraint(equalTo: self.myUIProgressView.bottomAnchor, constant: 11).isActive = true
secondBottomView.leadingAnchor.constraint(equalTo: self.myUIProgressView.leadingAnchor, constant: 0).isActive = true
secondBottomView.bottomAnchor.constraint(equalTo: self.bottomView.topAnchor, constant: -11).isActive = true
secondBottomView.trailingAnchor.constraint(equalTo: self.myUIProgressView.trailingAnchor, constant: 0).isActive = true
}
if UserDefaults.standard.bool(forKey: "switchState2") == true && UserDefaults.standard.bool(forKey: "switchState") == false {
secondBottomView.isHidden = true
topView.isHidden = false
topView.translatesAutoresizingMaskIntoConstraints = false
topView.topAnchor.constraint(equalTo: myUIProgressView.bottomAnchor, constant: 111).isActive = true
topView.bottomAnchor.constraint(equalTo: bottomView.topAnchor , constant: -11).isActive = true
topView.leadingAnchor.constraint(equalTo: myUIProgressView.leadingAnchor, constant: 0).isActive = true
topView.trailingAnchor.constraint(equalTo: myUIProgressView.trailingAnchor, constant: 0).isActive = true
}
if UserDefaults.standard.bool(forKey: "switchState") == true && UserDefaults.standard.bool(forKey: "switchState2") == true {
topView.isHidden = false
topView.translatesAutoresizingMaskIntoConstraints = false
topView.topAnchor.constraint(equalTo: myUIProgressView.bottomAnchor, constant: 10).isActive = true
topView.bottomAnchor.constraint(equalTo: secondBottomView.topAnchor, constant: -10).isActive = true
topView.leadingAnchor.constraint(equalTo: self.view.leadingAnchor, constant: 10).isActive = true
topView.trailingAnchor.constraint(equalTo: self.view.trailingAnchor, constant: -10).isActive = true
topView.widthAnchor.constraint(equalTo: secondBottomView.widthAnchor, multiplier: 1).isActive = true
topView.heightAnchor.constraint(equalTo: secondBottomView.heightAnchor, multiplier: 1).isActive = true
secondBottomView.isHidden = false
secondBottomView.translatesAutoresizingMaskIntoConstraints = false
secondBottomView.bottomAnchor.constraint(equalTo: bottomView.topAnchor, constant:-10).isActive = true
secondBottomView.leadingAnchor.constraint(equalTo: self.view.leadingAnchor, constant: 10).isActive = true
secondBottomView.trailingAnchor.constraint(equalTo: self.view.trailingAnchor, constant: -10).isActive = true
secondBottomView.widthAnchor.constraint(equalTo: topView.widthAnchor, multiplier: 1).isActive = true
secondBottomView.heightAnchor.constraint(equalTo: topView.heightAnchor, multiplier: 1).isActive = true
secondBottomView.topAnchor.constraint(equalTo: self.myUIProgressView.bottomAnchor, constant: 11).isActive = false
}