Skip to content

Instantly share code, notes, and snippets.

@aitemr
Created April 9, 2020 17:24
Show Gist options
  • Save aitemr/f8cf2feb27a68b2a89cec31421a77480 to your computer and use it in GitHub Desktop.
Save aitemr/f8cf2feb27a68b2a89cec31421a77480 to your computer and use it in GitHub Desktop.
private func setupConstraints() {
NSLayoutConstraint.activate([
scrollView.topAnchor.constraint(equalTo: view.safeTopAnchor),
scrollView.leadingAnchor.constraint(equalTo: view.leadingAnchor),
scrollView.trailingAnchor.constraint(equalTo: view.trailingAnchor),
scrollView.bottomAnchor.constraint(equalTo: view.bottomAnchor)
])
NSLayoutConstraint.activate([
backButton.topAnchor.constraint(equalTo: scrollView.topAnchor, constant: Self.viewInsets.top),
backButton.leadingAnchor.constraint(equalTo: scrollView.leadingAnchor, constant: Self.viewInsets.left)
])
NSLayoutConstraint.activate([
titleLabel.topAnchor.constraint(equalTo: backButton.bottomAnchor, constant: Self.verticalContentOffset),
titleLabel.leadingAnchor.constraint(equalTo: scrollView.leadingAnchor, constant: Self.viewInsets.left)
])
NSLayoutConstraint.activate([
subtitleLabel.topAnchor.constraint(equalTo: titleLabel.bottomAnchor, constant: 8),
subtitleLabel.leadingAnchor.constraint(equalTo: titleLabel.leadingAnchor)
])
NSLayoutConstraint.activate([
totemImageView.topAnchor.constraint(equalTo: scrollView.topAnchor),
totemImageView.trailingAnchor.constraint(equalTo: scrollView.trailingAnchor),
totemImageView.widthAnchor.constraint(equalToConstant: Self.totemImageViewSize.width),
totemImageView.heightAnchor.constraint(equalToConstant: Self.totemImageViewSize.height)
])
NSLayoutConstraint.activate([
contentView.topAnchor.constraint(equalTo: subtitleLabel.bottomAnchor, constant: Self.viewInsets.top),
contentView.centerXAnchor.constraint(equalTo: scrollView.centerXAnchor),
contentView.leadingAnchor.constraint(equalTo: scrollView.leadingAnchor),
contentView.trailingAnchor.constraint(equalTo: scrollView.trailingAnchor),
contentView.bottomAnchor.constraint(equalTo: scrollView.safeBottomAnchor)
])
NSLayoutConstraint.activate([
addImageButton.topAnchor.constraint(equalTo: contentView.topAnchor, constant: 36),
addImageButton.widthAnchor.constraint(equalToConstant: Self.addImageButtonSize.width),
addImageButton.heightAnchor.constraint(equalToConstant: Self.addImageButtonSize.height),
addImageButton.centerXAnchor.constraint(equalTo: contentView.centerXAnchor)
])
NSLayoutConstraint.activate([
nameTextField.topAnchor.constraint(equalTo: addImageButton.bottomAnchor, constant: 24),
nameTextField.leadingAnchor.constraint(equalTo: contentView.leadingAnchor,
constant: Self.viewInsets.left),
nameTextField.trailingAnchor.constraint(equalTo: contentView.trailingAnchor,
constant: -Self.viewInsets.right)
])
NSLayoutConstraint.activate([
descriptionTextField.topAnchor.constraint(equalTo: nameTextField.bottomAnchor,
constant: Self.verticalContentOffset),
descriptionTextField.leadingAnchor.constraint(equalTo: nameTextField.leadingAnchor),
descriptionTextField.trailingAnchor.constraint(equalTo: nameTextField.trailingAnchor)
])
NSLayoutConstraint.activate([
totemCategoriesView.topAnchor.constraint(equalTo: descriptionTextField.bottomAnchor,
constant: Self.verticalContentOffset),
totemCategoriesView.leadingAnchor.constraint(equalTo: nameTextField.leadingAnchor),
totemCategoriesView.trailingAnchor.constraint(equalTo: nameTextField.trailingAnchor),
totemCategoriesView.heightAnchor.constraint(equalToConstant: Self.totemCategoriesViewHeight)
])
NSLayoutConstraint.activate([
totemTypeView.topAnchor.constraint(equalTo: totemCategoriesView.bottomAnchor,
constant: Self.verticalContentOffset),
totemTypeView.leadingAnchor.constraint(equalTo: contentView.leadingAnchor, constant: Self.viewInsets.left),
totemTypeView.trailingAnchor.constraint(equalTo: contentView.trailingAnchor, constant: -10),
totemTypeView.heightAnchor.constraint(equalToConstant: Self.totemTypeViewHeight)
])
NSLayoutConstraint.activate([
createTotemButton.topAnchor.constraint(equalTo: totemTypeView.bottomAnchor,
constant: Self.verticalContentOffset),
createTotemButton.leadingAnchor.constraint(equalTo: nameTextField.leadingAnchor),
createTotemButton.trailingAnchor.constraint(equalTo: nameTextField.trailingAnchor),
createTotemButton.heightAnchor.constraint(equalToConstant: Self.createTotemButtonHeight)
])
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment