編集:ビデオは使用されているアプリのものです。つまり、ポートレートモードで再生するように設計された教育用ビデオです。
私はこの方法を使用して (NB iPhoneDevSDK.comは現在Googleによってマルウェアを含むとマークされているので、注意してください。関連する投稿のスクリーングラブをアップロードしました)、YouTubeビデオを開いて再生します(舞台裏でUIWebViewを使用)。
私が見せたいビデオはポートレート(320x480でアップロード)で記録されており、ポートレートモードのときにiPhoneの画面をきれいに埋めることを目的としていました。ただし、YouTubeビデオは強制横向きモードで開始され、携帯電話を横向きに動かしてから元に戻すことによってのみ縦向きにすることができます(場合によっては数回行う必要があります)。
私が疑問に思っているのは、UIWebViewにデフォルトでポートレートモードのビデオプレーヤーを開くように強制する方法はありますか?
注意:UIWebViewを生成するUIWebViewデリゲートに(interfaceOrientation == UIInterfaceOrientationPortrait)を設定しました。
編集:UIWebViewをオフチャンスでサブクラス化してみましたが、これで機能するようになりました。
@interface AltWebView : UIWebView
@end
@implementation AltWebView
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[[UIDevice currentDevice] setOrientation:UIInterfaceOrientationPortrait];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
@end
- 最初の画像:デフォルトで横向きで再生されているビデオ
- 2番目の画像:ポートレートモードを数回回転させた