setup autolayout example, also with stackView
func setupLayout() {
fullName.translatesAutoresizingMaskIntoConstraints = false
photo.translatesAutoresizingMaskIntoConstraints = false
let viewMargins = contentView.layoutMarginsGuide
photo.heightAnchor.constraint(equalToConstant: 40).isActive = true
photo.widthAnchor.constraint(equalTo: photo.heightAnchor).isActive = true
photo.leadingAnchor.constraint(equalTo: viewMargins.leadingAnchor).isActive = true
photo.centerYAnchor.constraint(equalTo: viewMargins.centerYAnchor).isActive = true
fullName.leadingAnchor.constraint(equalTo: photo.trailingAnchor, constant: 10).isActive = true
fullName.heightAnchor.constraint(equalTo: viewMargins.heightAnchor).isActive = true
fullName.trailingAnchor.constraint(equalTo: viewMargins.trailingAnchor).isActive = true
fullName.centerYAnchor.constraint(equalTo: viewMargins.centerYAnchor).isActive = true
}
func setupLayout() {
stackView.translatesAutoresizingMaskIntoConstraints = false
fullNameLabel.translatesAutoresizingMaskIntoConstraints = false
photoView.translatesAutoresizingMaskIntoConstraints = false
stackView.topAnchor.constraint(equalTo:contentView.layoutMarginsGuide.topAnchor).isActive = true
stackView.heightAnchor.constraint(equalTo:contentView.layoutMarginsGuide.heightAnchor).isActive = true
stackView.widthAnchor.constraint(equalTo:contentView.layoutMarginsGuide.widthAnchor).isActive = true
stackView.leftAnchor.constraint(equalTo:contentView.layoutMarginsGuide.leftAnchor).isActive = true
stackView.spacing = 20
photoView.widthAnchor.constraint(equalTo: photoView.heightAnchor).isActive = true
}