title: How to force a view to render itself?
body: <p>In my app I have a number of small subviews.  When the user taps a subview, I place one separate view over top of the tapped subview (same size) and then animate this separate view to full-screen size.</p>
  
  <p>The enlarging view is custom-drawn, which is creating a big problem with this approach.  If I create the enlarging view in my main view's <code>viewDidLoad</code> method and set its frame to full-screen size, the view's <code>drawRect</code> method is called immediately, and the view is properly rendered full-size.  If I then use this view in the animation, everything works as expected.</p>
  
  <p>However, I need this enlarging view to be different depending on which subview was tapped, so I need to re-create/re-draw it each time.  The problem is that when I do this in response to a touch event, the view's <code>drawRect</code> method does not get called until the animation begins, at which time the view's frame is small instead of full-screen, and as a result everything is drawn wrong.</p>
  
  <p>In my code for the touch event, I'm explicitly setting the view's frame to fullscreen and calling <code>setNeedsDisplay</code> before starting the animation, but this has no effect - <code>drawRect</code> just isn't called until the animation begins.</p>
  
  <p>Is there any way to force a redraw, so that the view is drawn while its frame is the size I want it to be?</p>