2010-07-14 6 views
3

J'ai une application helloworld simple. J'essaie de dire à l'activité qu'un utilisateur a cliqué sur "Cnn.com"Android WebView Communication d'un client WebView à l'activité

WebViewClient wc = new WebViewClient() { 
     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 
      if (url.equals("http://cnn.com/")) { 
       //TELL ACTIVITY CNN WAS CLICKED 
       return true; 
      } else { 
       return false; 

      } 
     } 

    }; 

    mWebView.setWebViewClient(wc); 

Comment est-ce que je ferais ceci.

(je viens d'un C# .NET fond)

+0

comment vous voulez dire exactement l'activité? Vous voulez afficher un dialogue? vous voulez ouvrir une autre activité? vous voulez montrer un Toast? – Cristian

Répondre

3
public class YourActivity extends Activity{ 

    // bla bla bla 

    // the code you already have 
    WebViewClient wc = new WebViewClient() { 
     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 
      if (url.equals("http://cnn.com/")) { 
       YourActivity.this.tellMe(); 
       return true; 
      } else { 
       return false; 

      } 
     } 

    }; 

    // this is the method to 'tell' the activity that someone clicked the link 
    public void tellMe(){ 
     // in this case I just raise a toast. 
     // but you can do whatever you want here ;) 
     Toast.makeText(YourActivity.this, "eyy!! somebody clicked the cnn link", 1).show(); 
    } 
} 
+0

+1 pour 'eyy !! quelqu'un a cliqué sur le lien cnn' – Pentium10

+0

hahahaha LOL! vous êtes mauvais jajaja – Cristian

+1

En fait, j'aime mieux les nouvelles de la BBC, mais cela fonctionne et je vais lui donner les félicitations :) –