Je fais des contraintes avec le langage visuel, mais chaque fois que j'essaie de les ajouter cela provoque une erreur.iOS Contstraints Cause SIGABRT Erreur
class TimerViewController : UIViewController{
let timer = TimerView()
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = .white
self.view.addSubview(timer)
self.createContraints()
}
func createContraints(){
self.timer.translatesAutoresizingMaskIntoConstraints = false
let horizontalConstraints =
NSLayoutConstraint.constraints(withVisualFormat: "H:|[timer]|", options: NSLayoutFormatOptions(), metrics: nil, views: ["timer" : timer])
let verticleContraints =
NSLayoutConstraint.constraints(withVisualFormat: "V:|==[timer]==|", options: NSLayoutFormatOptions(), metrics: nil, views: ["timer" : timer])
self.view.addConstraints(horizontalConstraints)
self.view.addConstraints(verticleContraints)
}
}
Y a-t-il une raison pour que vous le fassiez dans le code? Dans la plupart des cas, il est beaucoup plus simple de faire ce genre de chose dans le constructeur d'interface et est moins sujet aux erreurs. – Adrian
Je suis d'accord avec @Brandon, vous n'avez pas besoin d'ajouter == ici, si vous voyez votre console, vous verrez une erreur comme ceci 'Termination app due à l'exception uncaught 'NSInvalidArgumentException', raison: 'Impossible d'analyser le format de contrainte: une vue V: | == [v0] == | ^ ' ', qui vous indique quelle est la cause de votre problème. – 3stud1ant3