I am positioning 3 uibttons with the same height and wideth and same x value the only thing I want change is that I want each uibutton added 40 positivie it to seperate it. I would think there is some way to do this with a loop instead of doing this manually like i did below. I want (equalTo: view.centerYAnchor, constant : 0), to be replaced with yP plus 40 everytime it is called.
var yP = 0
undoButton.trailingAnchor.constraint(equalTo: view.centerXAnchor, constant :25),
undoButton.topAnchor.constraint(equalTo: view.centerYAnchor, constant : 0),
undoButton.widthAnchor.constraint(equalToConstant: CGFloat(widthBox)),
undoButton.heightAnchor.constraint(equalToConstant: 20),
clearButton.trailingAnchor.constraint(equalTo: view.centerXAnchor, constant :25),
clearButton.topAnchor.constraint(equalTo: view.centerYAnchor, constant : 40),
clearButton.widthAnchor.constraint(equalToConstant: CGFloat(widthBox)),
clearButton.heightAnchor.constraint(equalToConstant: 20),
color.trailingAnchor.constraint(equalTo: view.centerXAnchor, constant :25),
color.topAnchor.constraint(equalTo: view.centerYAnchor, constant : 80),
color.widthAnchor.constraint(equalToConstant: CGFloat(widthBox)),
color.heightAnchor.constraint(equalToConstant: 20),
Try this.
func setConstraints() {
var yPosition: CGFloat = 0
[undoButton, clearButton, color].forEach { button in
NSLayoutConstraint.activate([
button.trailingAnchor.constraint(equalTo: view.centerXAnchor, constant :25),
button.topAnchor.constraint(equalTo: view.centerYAnchor, constant : yPosition),
button.widthAnchor.constraint(equalToConstant: CGFloat(widthBox)),
button.heightAnchor.constraint(equalToConstant: 20)
])
yPosition += 40
}
}