2009-12-28 3 views
1

Может ли кто-нибудь объяснить мне, как воспроизводить видео в портретном режиме на устройстве iphone. Будет очень полезно, если вы предоставите некоторый пример кода для ссылки. Заранее спасибо.Могу ли я воспроизводить видео в портретном режиме?

+0

Это дубликат http://stackoverflow.com/questions/1423610/how-to-play-movie-in-portrait-mode –

ответ

0

Мое предложение было бы повернуть видео так, чтобы, если оно воспроизводилось в ландшафте, и устройство было повернуто к портрету, оно было бы правильно ориентировано. Оттуда вы можете отключить элементы управления (поэтому при нажатии на экран не отображаются элементы управления видео), если они вам не нужны. Таким образом, пользователь не будет знать, что игрок на самом деле ландшафт.

Редактировать: Попробуйте этот код из этой темы на iPhoneDevSDK; Я не знаю, если это будет работать, так как я не использовал его, хотя:

MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:[NSURL fileURLWithPath:moviePath]]; 

[moviePlayer setOrientation:UIDeviceOrientationPortrait animated:NO]; 

Edit: Упс! Поскольку я читаю далее в потоке, Apple рассматривает этот метод как частный API и, вероятно, отклонит ваше приложение для его использования. Вы могли бы попробовать.

+0

Мои требования не требуют контроля над видео, но как я могу повернуть видео (CGAffineTransformMakeRotation() может это сделать?). Являясь новым в этом поле, вы можете предоставить примерный код для этого. – kmr

+0

Я пробовал это - Apple * будет * отклонять ваше приложение, если вы хотите отправить его с помощью! Нам пришлось довольствоваться пейзажным режимом! –

+0

Apple не отклонила мое приложение, но оно сбой в iOS 4.0, поэтому мне все равно придется его менять. – Dimitris

0

Что вы хотите быть в портретной ориентации? Само видео вы можете вращать любой способ, когда вы его создаете; элементы управления наложением, однако, вы не можете ничего сделать с границами SDK.

0

Простым методом является использование UIWebView для воспроизведения видео, так как оно поддерживает обе ориентации.
Вот некоторые примеры кода (примечание: WebView будет порождать новый модальный вид на видео, чтобы играть в, так что размер его при нулевой х ноль):

if(!webView) 
{ 
    self.webView = [[[UIWebView alloc] initWithFrame:CGRectZero] autorelease]; 
    [self.view addSubview:webView]; 
} 

NSURL *url = [NSURL URLWithString:@"http://myserver.com/movie.m4v"]; 
NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
[webView loadRequest:request]; 
1

Если вы хотите, чтобы показать свой фильм в портрете mode, используя MPMoviePlayerController, лучше, чтобы, чтобы ваше видео было повернуто на 90 градусов, чтобы оно всегда воспроизводилось в ландшафтном режиме, но отображается пользователю, когда оно воспроизводится в режиме Портрет ...

Я прошел так много трюков и нашел выше, как лучший альтернативный.

Смежные вопросы