title: UIView constraints won't animate if layoutIfNeeded() is called
body: <p>I'm trying to animate a view that is constrained (<code>iconVerticalConstraint</code>) to be at center Y (<code>+100</code>) of a superview, specifically reaching its right (<code>0</code>) position after an animation.
  Here's my code:</p>
  
  <pre><code>self.view.layoutIfNeeded()
  
  UIView.animateKeyframes(withDuration: 2, delay: 0, animations: {
  
      UIView.addKeyframe(withRelativeStartTime: 0.0, relativeDuration: 0.25, animations:{
          self.iconVerticalConstraint.constant -= 20
      })
  
      UIView.addKeyframe(withRelativeStartTime: 0.25, relativeDuration: 0.75, animations:{
          self.iconVerticalConstraint.constant -= 80
      })
  })
  </code></pre>
  
  <p>I tried following <a href="https://stackoverflow.com/questions/12622424">this question's answer</a> but that didn't help, because in my case my view contains more subviews, intrinsically linked, and putting <code>layoutIfNeeded()</code> in my animation block would animate the <strong>whole</strong> view, and not just that constraint. Otherwise this approach does no animation at all.</p>