2013-02-14 279 views
1

我正在使用webview播放YouTube视频。它的工作完美,只是白色的空白页显示几秒钟。然后我得到加载页面指示和页面加载。我怎样才能摆脱开始的白色页面。我的代码是android:webview播放YouTube视频显示白色空白页面几秒钟

public static void showVideo(final Context context, WebView webReview, 
     final Activity activity, String videoid, String width, String height) { 


     WebSettings webSettings = webReview.getSettings(); 
     webSettings.setJavaScriptEnabled(true); 
     webSettings.setJavaScriptCanOpenWindowsAutomatically(true); 
     webReview.getSettings().setPluginsEnabled(true); 

     webReview.setWebChromeClient(new WebChromeClient() { 
      public void onProgressChanged(WebView view, int progress) { 
       activity.setProgress(progress * 100); 
      } 
     }); 
    /* webReview.setWebViewClient(new WebViewClient() { 

      @Override 
      public boolean shouldOverrideUrlLoading(WebView view, String url) { 
       view.loadUrl(url); 
       return true; 
      } 

      public void onReceivedError(WebView view, int errorCode, 
        String description, String failingUrl) { 
       Toast.makeText(context, description, Toast.LENGTH_LONG) 
         .show(); 
      } 
      @Override 
      public void onPageStarted(WebView view, String url, 
        Bitmap favicon) { 
       Log.i("onPageStarted", "url" + url); 
       super.onPageStarted(view, url, favicon); 
       if (progreesDialogue != null) { 
        showProgressDialog(); 
       } 

      } 

      @Override 
      public void onPageFinished(WebView view, String url) { 

       if (progreesDialogue != null 
         && progreesDialogue.isShowing()) { 

        progreesDialogue.dismiss(); 
       } 
      } 

     }); */ 

     String data = "<html>" 
       + "<head>" 
       + "</head>" 
       + "<body style=\"margin: 0; padding: 0\">" 
       + "<iframe " 
       + "type=\"text/html\" " 
       + "class=\"youtube-player\" " 
       + "width=\"" 
       + width 
       + "\" " 
       + "height=\"" 
       + height 
       + "\" " 
       + "src=\"http://www.youtube.com/v/" 
       + videoid 
       + "?controls=0&showinfo=0&showsearch=0&modestbranding=1&autoplay=1&fs=0\" " 
       + "frameborder=\"0\"></iframe>" + "</body>" + "</html>"; 



     webReview.loadData(data, "text/html", "utf-8"); 
     //webReview.loadUrl("http://www.youtube.com/v/"+videoid); 

    } 
} 

我已经尝试过webviewclient也取消注释,这是在下面的代码中注释。

请帮助解决这个问题。

+0

不知道你能解决这个问题......你所看到的白色花一些时间来加载页面的结果。您可以尝试在本机或HTML代码中显示一些“等待”指示符。 – Theo 2013-02-15 22:53:26

回答

0
android:hardwareAccelerated='true' 

使用这个在你的AndroidManifest.xml