如何管理Android Webview的Blank White Loading屏幕?

Rob*_*bbe 17 android screen loading webview

这是一个直观的问题而不是直接问题,但是当我的应用程序中加载WebView时,屏幕为空白白色,持续2-4秒,直到内容完全加载.时间取决于正在加载的内容的大小.

有没有办法管理这个,所以屏幕只会在加载时刷新内容?像"加载......"动画或类似的东西?我只是不希望向我的用户呈现纯白屏幕.

我有一个启动画面,然后加载WebView.在初始空白暂停(加载时)之后,WebView工作正常,但我想将其保存在特定屏幕上,直到页面加载或具有带进度加载程序的黑屏.

是否有可能检测到负载完成的东西?如果是这种情况,我可以将其用作触发器.

有谁知道管理这个空白屏幕的方法?

谢谢!

/ R

Law*_*one 27

您也可以使webview透明:

webview.setBackgroundColor(0x00000000); 
Run Code Online (Sandbox Code Playgroud)

  • 在XML中添加`android:background ="@ android:color/transparent"`没有任何效果.`webView.setBackgroundColor(Color.TRANSPARENT)`的确如此. (4认同)

sid*_*shu 8

只需将此代码放入onCreate即可

               ProgressDialog _dialog ;                   
               my_web_view.setWebViewClient(new WebViewClient(){


       @Override
       public void onPageStarted(WebView view, String url, Bitmap favicon) {
        // TODO Auto-generated method stub
        _dialog =ProgressDialog.show(Store_locator.this, "", "Please wait...");
        super.onPageStarted(view, url, favicon);
       }
       @Override
       public void onPageFinished(WebView view, String url) {
        // TODO Auto-generated method stub
        super.onPageFinished(view, url);
        _dialog.dismiss();
       }

       @Override
       public void onReceivedError(WebView view, int errorCode,
         String description, String failingUrl) {
        // TODO Auto-generated method stub
        super.onReceivedError(view, errorCode, description, failingUrl);
        try{
         _dialog.dismiss();
        }catch (Exception e) {
         // TODO: handle exception
        }
       }

      });
Run Code Online (Sandbox Code Playgroud)


pap*_*han 0

也许你可以看看上一期。

如何监听 WebView 完成加载 URL?