Instead of using the MPMoviePlayerController explicitly, you can load the movie into a UIWebView. That will launch the movie in portrait mode, with the usual movie player controls. Credits go to this blog post.
Here's a code snippet:
self.webView = [[[UIWebView alloc] initWithFrame: CGRectMake(0.0, 0.0, 1.0, 1.0)] autorelease];
NSURLRequest *request = [[NSURLRequest alloc] initWithURL: urlToMovie];
[self.webView loadRequest: request];
[request release];
Here the webView instance is initialized as a 1x1 pixel element, and is not added as a sub-view. When it loads the URL request of the movie, it will automatically fill the entire screen and you'll see the movie play in portrait mode.
Note: it seems like it requires iPhone OS 3.1 (or higher) for videos to play in UIWebView.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…