Hjälp med WebView

Diskussion i 'Frågor, support och diskussion' startad av Adevade, 13 sept 2010.

  1. Adevade

    Adevade Youth Droid Medlem

    Blev medlem:
    14 apr 2010
    Inlägg:
    135
    Mottagna gillanden:
    2

    MINA ENHETER

    Tjena! Undrar bara om någon skulle kunna ta en titt på min nybörjarkod och säga vad som inte stämmer? Skulle verkligen uppskattas. Det jag vill göra är alltså ladda en hemsida i en WebView med nån form av indikering att programmet laddar under tiden.

    Kod:
    package com.adevade.webtest;
    
    import android.app.Activity;
    import android.app.ProgressDialog;
    import android.content.ReceiverCallNotAllowedException;
    import android.os.Bundle;
    import android.webkit.WebChromeClient;
    import android.webkit.WebView;
    
    
    public class Main extends Activity {
    	
    	WebView wvMainView;
    	ProgressDialog progressDialog;
    	
    	/** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(wvMainView);
    
            progressDialog = new ProgressDialog(mainLoading);
            progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
            progressDialog.setMessage("Loading...");
            progressDialog.setCancelable(false);
            
            WebView wvMainView = new WebView(this);
            wvMainView.getSettings().setJavaScriptEnabled(true);
            wvMainView.setWebChromeClient(new WebChromeClient());
            ProgressDialog.show(mainLoading.this, "", "Loading...");
            wvMainView.loadUrl("http://www.google.com/");
        }
    }
     
  2. nico

    nico Youth Droid Medlem

    Blev medlem:
    24 nov 2009
    Inlägg:
    157
    Mottagna gillanden:
    0

    MINA ENHETER

    Mja, det vore kanske bra om du beskrev lite bättre vad det är som händer. Men något jag reagerade på direkt är att du sätter en WebChromeClient, men den är helt tom och fyller ingen som helst funktion. Du kommer dock att behöva veta när laddningen är klar för att kunna stänga progress-rutan, vilket kan göras genom att sätta en WebViewClient (men jag tror att det skulle gå att åstadkomma något liknande med en WebChromeClient också). I exemplet nedan kommer dialogen att stängas när laddningen är klar:

    Kod:
    wvMainView.setWebViewClient(new WebViewClient() {
         public void onPageFinished(WebView view, String url) {
             progressDialog.dismiss();
         }
    });
    Sedan kanske du vill visa din WebView för användaren också? Det gör du exempelvis med hjälp av:
    Kod:
    setContentView(webview);