2012-05-15 2 views
2

Я работаю в приложении, которое имеет URL-адреса для загрузки в webview, каждая вещь работает нормально до уровня ариды 13 уровня andorid, но для andorid ics она ведет себя по-другому, некоторые URL-адреса загружаются правильно, но некоторые причины мерцания экрана при загрузке, у меня нет URL-адресов с https, это простые http-адреса. Я не понимаю, почему это происходит, пожалуйста, помогите мне. мой кодwebview не работает при загрузке url в android ics

это-
    progressDialog = ProgressDialog.show(WebViewActivity.this, "", 
        "Loading..."); 
        progressDialog.setCancelable(true); 

        webview = (WebView) findViewById(R.id.webview); 
        webview.getSettings().setJavaScriptEnabled(true); 
        webview.setWebViewClient(new MyWebViewClientICS()); 
        webview.setLayerType(View.LAYER_TYPE_SOFTWARE, null); 
        PluginState state = WebSettings.PluginState.ON; 
        webview.getSettings().setPluginState(state); 
        webview.getSettings().setDomStorageEnabled(true); 
        webview.setBackgroundColor(0); 
        webview.getSettings().setSupportZoom(true); 

        webview.setWebChromeClient(new WebChromeClient() { 
        public void onProgressChanged(WebView view, int progress) { 
        if (view.getProgress() == 100) { 
         progressDialog.dismiss(); 
          } 
        } 
        webview.loadUrl(url); 

        } 

     private class MyWebViewClientICS extends WebViewClient { 
     @Override 
     public void onReceivedError(WebView view, int errorCode, 
      String description, String failingUrl) { 
     Log.d("onReceivedError", errorCode + "" + description 
       + "failingUrl" + failingUrl); 
     Toast.makeText(WebViewActivity.this, 
       "Sorry, error in loading page, please try again", 
       Toast.LENGTH_SHORT).show(); 
     finish(); 
    } 

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

заранее спасибо

ответ

0

Ваша установка выглядит хорошо для меня. Вы пытались использовать стандартный «WebViewClient» вместо своего «MyWebViewClientICS»?

+0

ранее, я использую его, но не имеет смысла, я знаю WebView из Andorid мике глючит, но то, что я должен сделать для решения вопроса о мерцающих – Archana

1

попробовать это

webView.getSettings().setJavaScriptEnabled(true); 
webView.getSettings().supportZoom(); 
+0

я включил их уже – Archana

0

попробовать этот

progressBar = ProgressDialog.show(WebPage.this, "", "Loading..."); 
url = getIntent().getStringExtra("website"); 
System.out.println("Url is " + url); 
web = (WebView) findViewById(R.id.webView1); 

web.getSettings().setJavaScriptEnabled(true); 
web.getSettings().setBuiltInZoomControls(false); 

web.setWebViewClient(new WebViewClient() { 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     Log.i(TAG, "Processing webview url click..."); 
     view.loadUrl(url); 
     return true; 
    } 

    public void onPageFinished(WebView view, String url) { 
     Log.i(TAG, "Finished loading URL: " + url); 
     if (progressBar.isShowing()) { 
      progressBar.dismiss(); 
     } 
    } 
}); 
web.loadUrl("http://"+url) 
+0

спасибо за ответ Хариш, я попробуем это – Archana

+0

извините, но это не решило мою проблему, все еще прессинговая в andorid 4.03, пожалуйста, дайте больше предложений ... – Archana

0

старый вопрос. Но это и решило проблему для меня.

webView.setBackgroundColor(0x77000000); 
Смежные вопросы