title: iOS presentMoviePlayerViewControllerAnimated can't be called twice using the same viewController
body: <p>So I'm trying to present a MPMoviePlayerViewController using the method presentMoviePlayerViewControllerAnimated in my own view controller. </p>
  
  <p>However, once I clicked the blue Done button on the top left, when I present the same viewController again (so that I can resume a video without having to create another instance of MPMoviePlayerViewController), the controls will no longer work if you let them disappear on their own after a few seconds. The controls will still function if you interact with them before they disappear, but once they fade away on their own, you can no longer bring them back up when tapping the video. This happens on both the device and the simulator.</p>
  
  <p>Simplified code:</p>
  
  <pre><code>- (void) startPlayback
  {
      if (self.videoViewController == nil)
      {
          self.videoViewController = [[MPMoviePlayerViewController alloc] initWithContentURL:[NSURL URLWithString:self.videoUrl]];
      }
      // present the video player
      [self presentMoviePlayerViewControllerAnimated:self.videoViewController];
  }
  </code></pre>
  
  <p>assume that startPlayback is a delegate method or something in a view controller, and it's being triggered by a button. Self would refer to the view controller in this case.</p>
  
  <p>So with this, it will bring up the video player which works perfectly. Then, once I wait a bit, the controls will disappear and I can bring them back by tapping the video. I can then dismiss this video player using the Done button on the top left. Once I dismiss it, and I can then bring back the video view controller. The video will still be playing, but now, when I wait a bit and the controls disappear, I can no longer bring up the controls by tapping the screen, effectively trapping myself in the video player.</p>
  
  <p>I have found various solutions into hooking into the Done button, but it hasn't really allowed me to reuse the video player. For example:</p>
  
  <pre><code>// Remove the observer so that the blue button doesn't close the viewController
  [[NSNotificationCenter defaultCenter] removeObserver:self.videoViewController name:MPMoviePlayerPlaybackDidFinishNotification object:self.videoViewController.moviePlayer];
  
  // Add itself as an observer
  [[NSNotificationCenter defaultCenter] addObserver:self 
                                               selector:@selector(movieEnded:) name:MPMoviePlayerPlaybackDidFinishNotification
                                                 object:self.videoViewController.moviePlayer];
  </code></pre>
  
  <p>In my movieEnded:, I can then dismiss the movie view controller via: </p>
  
  <pre><code>[self dismissMoviePlayerViewControllerAnimated];
  </code></pre>
  
  <p>But when I try to present the viewController again, the video player just gets stuck Loading... forever.</p>
  
  <p>Any ideas?</p>