2012-07-25 36 views
0

我想在webview中嵌入一個YouTube視頻,並且似乎在視頻的右側沒有消失。webview中的視頻邊距

我看到很多其他像這樣的問題,並嘗試修復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"); 

我試圖讓風格:體= 0'margin = 0的JavaScript標記內。我不知道如何上傳屏幕截圖,因爲我在手機上進行了調試,但在視頻右側的視頻邊緣大約爲6像素,而左側和視頻頂部與屏幕對齊。

回答

1

那麼,默認情況下HTML是左對齊的,所以,如果你在右手邊有一個邊距,這意味着margin:0有效。但是,將右側邊距設置爲0將無濟於事,因爲這並不意味着該對象會填充。

嘗試說

 + " type='application/x-shockwave-flash' style='margin:0;width:100%;padding:0;' allowscriptaccess='always' allowfullscreen='true'" 

如果設置寬度爲100%,爲嵌入不工作,也許嘗試設置寬度設備屏幕的寬度,不要忘記對方向進行更新。

+0

非常感謝。將這個寬度設置爲100%後,這次工作! – Android2390 2012-07-25 16:39:02

+0

嘿忽略我以前的答案,原來的參數「%」不工作在JavaScript加上給樣式標記100%的寬度將無法工作的視頻,我已經公佈解決方案來解決這個問題,這將工作任何手機,因爲它根據手機/平板電腦屏幕尺寸 – Android2390 2012-07-25 23:00:54

+0

計算寬度和高度,這是選項nr。兩個如果你看看它:) – Aadaam 2012-07-25 23:24:23

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"); 

的問題是越來越寬度和高度的屏幕會擰緊密度像素和正常的像素問題。