SimpleLayoutViewController.swift 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. //
  2. // SimpleLayoutViewController.swift
  3. // SnapKit
  4. //
  5. // Created by Spiros Gerokostas on 01/03/16.
  6. // Copyright © 2016 SnapKit Team. All rights reserved.
  7. //
  8. import UIKit
  9. class SimpleLayoutViewController: UIViewController {
  10. var didSetupConstraints = false
  11. let blackView: UIView = {
  12. let view = UIView()
  13. view.backgroundColor = .black
  14. return view
  15. }()
  16. let redView: UIView = {
  17. let view = UIView()
  18. view.backgroundColor = .red
  19. return view
  20. }()
  21. let yellowView: UIView = {
  22. let view = UIView()
  23. view.backgroundColor = .yellow
  24. return view
  25. }()
  26. let blueView: UIView = {
  27. let view = UIView()
  28. view.backgroundColor = .blue
  29. return view
  30. }()
  31. let greenView: UIView = {
  32. let view = UIView()
  33. view.backgroundColor = .green
  34. return view
  35. }()
  36. override func viewDidLoad() {
  37. super.viewDidLoad()
  38. view.backgroundColor = UIColor.white
  39. view.addSubview(blackView)
  40. view.addSubview(redView)
  41. view.addSubview(yellowView)
  42. view.addSubview(blueView)
  43. view.addSubview(greenView)
  44. view.setNeedsUpdateConstraints()
  45. }
  46. override func updateViewConstraints() {
  47. if (!didSetupConstraints) {
  48. blackView.snp.makeConstraints { make in
  49. make.center.equalTo(view)
  50. make.size.equalTo(CGSize(width: 100, height: 100))
  51. }
  52. redView.snp.makeConstraints { make in
  53. make.top.equalTo(blackView.snp.bottom).offset(20.0)
  54. make.right.equalTo(blackView.snp.left).offset(-20.0)
  55. make.size.equalTo(CGSize(width: 100, height: 100))
  56. }
  57. yellowView.snp.makeConstraints { make in
  58. make.top.equalTo(blackView.snp.bottom).offset(20.0)
  59. make.left.equalTo(blackView.snp.right).offset(20.0)
  60. make.size.equalTo(CGSize(width: 100, height: 100))
  61. }
  62. blueView.snp.makeConstraints { make in
  63. make.bottom.equalTo(blackView.snp.top).offset(-20.0)
  64. make.left.equalTo(blackView.snp.right).offset(20.0)
  65. make.size.equalTo(CGSize(width: 100, height: 100))
  66. }
  67. greenView.snp.makeConstraints { make in
  68. make.bottom.equalTo(blackView.snp.top).offset(-20.0)
  69. make.right.equalTo(blackView.snp.left).offset(-20.0)
  70. make.size.equalTo(CGSize(width: 100, height: 100))
  71. }
  72. didSetupConstraints = true
  73. }
  74. super.updateViewConstraints()
  75. }
  76. }