I have a container Webview which plays videos.I have fixed the size of container inside xml file by 200dp. Webview loads data by loading html format. Video is playing smoothly but problem is video height doesn't fit to the given size and user can drag video vertically up and down.Videos width is adjusting according to device size.But the problem is with adjusting video height.
xml code for container
android:layout_width="match_parent"
android:layout_height="200dp">
android:id="@+id/myWeb"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:alwaysDrawnWithCache="true"
/>
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:id="@+id/progressBar3"
/>
xml code to init webview and load data
webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
webView.getSettings().setSaveFormData(false);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
webView.clearFormData();
webView.clearCache(true);
webView.clearHistory();
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
@Override
public void onLoadResource(WebView view, String url) {
super.onLoadResource(view, url);
view.clearHistory();
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
webView.setVisibility(View.VISIBLE);
progressBar.setVisibility(View.GONE);
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
view.clearFormData();
view.clearHistory();
view.clearCache(true);
super.onPageStarted(view, url, favicon);
webView.setVisibility(View.VISIBLE);
progressBar.setVisibility(View.VISIBLE);
}
});
webView.setWebChromeClient(new WebChromeClient());
webView.getSettings().setBuiltInZoomControls(false);
webView.getSettings().setDisplayZoomControls(false);
webView.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
String htmlData=getHtmlData(model.getVideo_url());
webView.loadData(htmlData, "text/html", null);
xml code to load Html data
private String getHtmlData(String imageUrl) {
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(
"\n" +
"" +
"\n" +
"" +
"
" +"
" +"" +
"
");stringBuilder.append(
"
"function dismissProgress() {\n" +
"Android.dismissProgress(0);" +
"}\n" +
"\n");
stringBuilder.append("");
stringBuilder.append("" +
"");
return stringBuilder.toString();
}
Sp what i am looking for is how to fit the video content inside given height, so that user wont be able to drag the video vertically?.It should adjust the video within the view's height.