2010-08-23 2 views
7

모든 뷰가 세로로 보이는 iPhone 응용 프로그램이 있습니다. 거기에 HTML이 포함 된 UIWebview가 있습니다. Amoung 거기에 html5 태그가 비디오입니다. 동영상을 재생할 때 세로로만 재생됩니다. 조경에서 작동하도록하려면 viewController에서 shouldAutorotateToInterfaceOrientation에 대해 YES를 리턴해야하지만 viewcontroller가 가로 방향으로 회전하는 것을 원하지 않습니다. 비디오가 가로 방향을 지원하기를 원합니다.HTML5 video in UIWebview 방향 프리

가능합니까?

감사합니다.

답변

1

나는 비디오 태그 대신 embed 태그를 사용하더라도 작동하지만 멋진 이미지는 얻지 못한다고해도 같은 문제가 생깁니다.

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

퀵타임 플러그인을 설치해야하는 퀵타임으로 비디오를 재생합니다. 영리한 생각. 나는 단지 플러그인에 의지하지 않았 으면 좋겠다. – Adam

1

당신 또는 다른 스크립팅 엔진을 사용할 자바 스크립트가 있다면, 당신은 비디오 요소 및 embed 요소를 id 속성을주고 속성을 조정할 자바 스크립트를 사용하여 DOM에 접근 시도?

<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> 

src를 풍경이나 초상화와 완전히 다른 비디오로 변경하는 것에 대해 이야기하는 경우 가능합니다. 나는 이것이 자바 스크립트를 제공하는 PhoneGap에서만 가능하다고 생각한다.