我正在尝试在网页浏览中嵌入一个YouTube视频,而且视频右侧的边距似乎不会消失。
我看到很多其他类似的问题并尝试修复javascript,但仍然存在边缘。
这是我的代码:
video = (WebView) v.findViewById(R.id.videoview);
// video.getSettings().setLoadWithOverviewMode(true);
// video.getSettings().setUseWideViewPort(true);
String widthAndHeight = "width='null' height='null'";
String videoURL = "http://www.youtube.com/v/DZi6DEJsOJ0";
video.setHorizontalScrollBarEnabled(false);
video.setVerticalScrollBarEnabled(false);
video.getSettings().setJavaScriptEnabled(true);
video.getSettings().setPluginsEnabled(true);
String temp = "<object "
+ widthAndHeight
+ ">"
+ "<body style='margin:0;padding:0;rightmargin:0'>"
+ "<param name='allowFullScreen' value='true'>"
+ "</param><param name='allowscriptaccess' value='always'>"
+ "</param><embed src='"
+ videoURL
+ "'"
+ " type='application/x-shockwave-flash' style='margin:0;padding:0;' allowscriptaccess='always' allowfullscreen='true'"
+ widthAndHeight + "></embed></object>";
video.loadData(temp, "text/html", "utf-8");
我尝试在javascript中给出样式:body = 0'margin = 0标签。我不知道如何上传屏幕截图,因为我正在手机上进行调试,但视频右侧的视频边距约为6像素,而视频的左侧和顶部与屏幕对齐。
答案 0 :(得分:1)
嗯,默认情况下HTML是左对齐的,因此,如果你在RIGHT手边有一个边距,这意味着margin:0工作。但是,将右侧边距设置为0将无济于事,因为它并不意味着对象将填充。
试着说
+ " type='application/x-shockwave-flash' style='margin:0;width:100%;padding:0;' allowscriptaccess='always' allowfullscreen='true'"
如果将embed的宽度设置为100%不起作用,可能会尝试将宽度设置为设备屏幕的宽度,并且不要忘记更新方向。
答案 1 :(得分:0)
因此经过大量的研究并试图弄清楚它是如何工作的,我为将来可能需要它的人提供了这个工作代码:
Display display = getActivity().getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int widthdp = (int) (width / getResources().getDisplayMetrics().density);
int height = display.getHeight();
int heightdp = (int) (height / getResources().getDisplayMetrics().density);
String widthAndHeight = "width=" + widthdp + "height=" + heightdp;
String temp = "<object "
+ widthAndHeight
+ ">"
+ "<body style='margin:0;padding:0;'>"
+ "<param name='allowFullScreen' value='true'>"
+ "</param><param name='allowscriptaccess' value='always'>"
+ "</param><embed src='"
+ videoPoP
+ "'"
+ " type='application/x-shockwave-flash' style='margin:0;padding:0;' allowscriptaccess='always' allowfullscreen='true'"
+ widthAndHeight + "></embed></object>";
video.loadData(temp, "text/html", "utf-8");
问题是获得屏幕的宽度和高度会搞砸密度像素和正常的像素化问题。