2016-07-25 3 views
0

埋め込み済みのYouTube動画をwebviewで再生しようとしています。私の問題は、画面を回転させてウェブビューの高さを変更したとき、iframeの高さが変更されていないことです。iframeのAndroid埋め込みビデオのサイズがウェブビューの高さに変更されない

String embedSrc = "https://www.youtube.com/embed/8SeRU_ZPDkE"; 
String iframe = "<html><body style=\"margin: 0; padding: 0; background: #000;\"><iframe width=\"100%\" height=\" 100% \" src=\"" + embedSrc + "frameborder=\"0\" allowfullscreen style=\"background: #000;\"></iframe></body></html>"; 

webView.loadData(iframe, "text/html", "utf-8"); 

WebSettings settings = webView.getSettings(); 
     settings.setJavaScriptEnabled(true); 
     settings.setBuiltInZoomControls(false); 
     settings.setDomStorageEnabled(true); 

     String userAgent = settings.getUserAgentString(); 
     if (userAgent != null) { 
      userAgent = userAgent.replace("Android", ""); 
      settings.setUserAgentString(userAgent); 
     } 

//code to update webview height 
webView.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, newHeight)); 


//layout 
<LinearLayout 
    android:id="@+id/root_view" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#000" 
    android:orientation="vertical" 
    > 

    <WebView 
     android:id="@+id/webview" 
     android:layout_width="wrap_content" 
     android:layout_height="250dp" 
     android:scrollbars="none" 
     /> 

</LinearLayout> 

私はすでにこの

webview.getSettings().setUseWideViewPort(true); 
webview.getSettings().setLoadWithOverviewMode(true); 

を試してみました。しかし、このコードは、ユーチューブの再生が非常に小さく制御します。

+0

任意の成功...? – AkhilGite

+0

この場合はまだ何もありません:( –

+0

解決策@AkhilGiteが見つかりました。 –

答えて

0

はこのように、このResponsive Iframe CSS tipを使用してのWebViewではiframeを使用してこの問題を解決:

<style> 
.video-container { 
position: relative; 
padding-bottom: 56.25%; 
padding-top: 35px; 
height: 0; 
overflow: hidden; 
} 
.video-container iframe { 
position: absolute; 
top:0; 
left: 0; 
width: 100%; 
height: 100%; 
} 
</style> 
<div class="video-container"> 
    <iframe src="http://www.youtube.com/embed/4aQwT3n2c1Q" allowfullscreen="" frameborder="0"> 
    </iframe> 
</div> 
関連する問題