2010-08-23 4 views
7

У меня есть приложение для iPhone, где каждый вид в портрете. У меня есть UIWebview с некоторым HTML-кодом. В то же время есть видео с тегом html5. Когда я воспроизвожу это видео, он воспроизводится только на портретах. Чтобы заставить его работать в ландшафте, я должен вернуть YES для shouldAutorotateToInterfaceOrientation в viewcontroller, но я не хочу, чтобы viewcontroller вращался до ландшафта. Я хочу, чтобы видео поддерживало ландшафтную ориентацию.HTML 5 видео в UIWebview Ориентация ландшафта

Возможно?

Спасибо!

ответ

1

У меня такая же проблема, интересно, но если вы используете теги для встраивания вместо видео-тегов, это работает, но вы не получите приятное изображение!

<embed src='yourmovie.mp4' width='280px'></embed> 
+0

Воспроизведение видео с помощью quicktime, для чего требуется установить плагин QuickTime. Умная идея. Я просто хочу, чтобы он не полагался на плагин. – Adam

1

если у вас есть JavaScript доступны для вас или какого-либо другого скриптового движка, вы пробовали выставлению элемент и элемент EMBED атрибут ID и доступ к DOM с помощью JavaScript для настройки атрибутов?

<body> 
<video id="myvideo" width="240" height="320" src="a.vp8"> 
    <embed id="myvideoe" width="240" height="320" src="a.vp8"> 
</video> 
<script type="text/javascript"> 
if (window.screen.width < window.screen.height) { 
    //portrait 
    document.getElementById('myvideo').setAttribute('width', 240); 
    document.getElementById('myvideo').setAttribute('height', 320); 
    document.getElementById('myvideoe').setAttribute('width', 240); 
    document.getElementById('myvideoe').setAttribute('height', 320); 
} else { 
    //landscape 
    document.getElementById('myvideo').setAttribute('width', 320); 
    document.getElementById('myvideo').setAttribute('height', 240); 
    document.getElementById('myvideoe').setAttribute('width', 320); 
    document.getElementById('myvideoe').setAttribute('height', 240); 
} 
//or simply do this if you have differing size target screens: 
//you can always subtract out the space for the controls. 
document.getElementById('myvideo').setAttribute('width', window.screen.width); 
document.getElementById('myvideo').setAttribute('height', window.screen.height); 
document.getElementById('myvideoe').setAttribute('width', window.screen.width); 
document.getElementById('myvideoe').setAttribute('height', window.screen.height); 
</script> 
</body> 

, если вы говорите об изменении СРКА на совершенно другое видео, это пейзаж или портрет, который тоже возможно. Я думаю, что это возможно только с помощью PhoneGap, который предоставляет javascript.