2011-07-16 17 views
12

Quiero mostrar un brindis cuando la vista web está totalmente cargada. Pero la tostada no aparece, no sé why..here es mi código:onPageFinished() nunca llamado (webview)!

public class WebViewSignUp extends Activity{ 

    WebView mWebView; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.webviewsignup); 

     mWebView = (WebView) findViewById(R.id.webview); 
     mWebView.getSettings().setJavaScriptEnabled(true); 

     ((TextView)findViewById(R.id.home)).setOnClickListener(new OnClickListener(){ 
      public void onClick(View v) { 
       finish(); 
      } 
     }); 

    mWebView.setWebViewClient(new WebViewClient() { 
     @Override 
     public void onPageFinished(WebView view, String url) { 
      super.onPageFinished(mWebView, url); 

      Toast.makeText(getApplicationContext(), "Done!", Toast.LENGTH_SHORT).show(); 
     } 
    }); 
    mWebView.loadUrl("http://pabebbe.com/m/register"); 

    mWebView.setWebViewClient(new WebViewClient() { 
     public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { 
     Toast.makeText(getApplicationContext(), "Oh no! " + description, Toast.LENGTH_SHORT).show(); 
     } 
     }); 
    } 
} 

Respuesta

38

La segunda llamada a setWebViewClient() es sobrescribir la primera.

Crea solo una instancia única de WebViewClient con ambas sustituciones en la misma clase, y llama al setWebViewClient solo una vez. A continuación, cargue la vista web:

mWebView.setWebViewClient(new WebViewClient() { 
    @Override 
    public void onPageFinished(WebView view, String url) { 
     super.onPageFinished(mWebView, url); 
     Toast.makeText(getApplicationContext(), "Done!", Toast.LENGTH_SHORT).show(); 
    } 

    @Override 
    public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { 
     Toast.makeText(getApplicationContext(), "Oh no! " + description, Toast.LENGTH_SHORT).show(); 
    } 
}); 
mWebView.loadUrl("http://pabebbe.com/m/register"); 
Cuestiones relacionadas