title: Using ScrollView Programmatically in Swift 3
body: <p>I have searched other questions and seem to still have some trouble creating my scrollView programmatically with autolayout in swift 3. I am able to get my scrollview to show up as shown in the picture below, but when I scroll to the bottom my other label does not show up and the 'scroll top' label does not disappear. </p>
  
  <p><a href="https://i.stack.imgur.com/W6QJ2.png" rel="noreferrer"><img src="https://i.stack.imgur.com/W6QJ2.png" alt="ScrollView"></a> </p>
  
  <p>Hoping someone can help review my code below! </p>
  
  <pre><code>import UIKit
  
  class ViewController: UIViewController {
  
  let labelOne: UILabel = {
      let label = UILabel()
      label.text = "Scroll Top"
      label.backgroundColor = .red
      label.translatesAutoresizingMaskIntoConstraints = false
      return label
  }()
  
  let labelTwo: UILabel = {
      let label = UILabel()
      label.text = "Scroll Bottom"
      label.backgroundColor = .green
      label.translatesAutoresizingMaskIntoConstraints = false
      return label
  }()
  
  
  override func viewDidLoad() {
      super.viewDidLoad()
  
      let screensize: CGRect = UIScreen.main.bounds
      let screenWidth = screensize.width
      let screenHeight = screensize.height
      var scrollView: UIScrollView!
      scrollView = UIScrollView(frame: CGRect(x: 0, y: 120, width: screenWidth, height: screenHeight))
      scrollView.contentSize = CGSize(width: screenWidth, height: 2000)
      scrollView.addSubview(labelOne)
      scrollView.addSubview(labelTwo)
  
  
      view.addSubview(labelOne)
      view.addSubview(labelTwo)
      view.addSubview(scrollView)
  
      // Visual Format Constraints
      view.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "H:|[v0]|", options: NSLayoutFormatOptions(), metrics: nil, views: ["v0": labelOne]))
      view.addConstraints(NSLayoutConstraint.constraints(withVisualFormat: "V:|-100-[v0]", options: NSLayoutFormatOptions(), metrics: nil, views: ["v0": labelOne]))
  
      // Using iOS 9 Constraints in order to place the label past the iPhone 7 view
      view.addConstraint(NSLayoutConstraint(item: labelTwo, attribute: .top, relatedBy: .equal, toItem: labelOne, attribute: .bottom, multiplier: 1, constant: screenHeight + 200))
      view.addConstraint(NSLayoutConstraint(item: labelTwo, attribute: .right, relatedBy: .equal, toItem: labelOne, attribute: .right, multiplier: 1, constant: 0))
      view.addConstraint(NSLayoutConstraint(item: labelTwo, attribute: .left, relatedBy: .equal, toItem: labelOne, attribute: .left, multiplier: 1, constant: 0)     
  
      }
  
  }
  </code></pre>