Aller au contenu

récupérer des liens dans une webview


vince123

Recommended Posts

Il me semble que cela devrait t'aider :

@Override

public boolean shouldOverrideUrlLoading(WebView view, String url)

{

Log.v("CALLED SHOULD OVERRIDE URL LOADING", url.toString());

if (url.contains("http://null")) {

// do something local

return true;

}

else {

view.loadUrl(url);

return false;

}

}

Lien vers le commentaire
Partager sur d’autres sites

C'est que ton lien fait un target="_blank".

La page que tu affiches dans ta Webview vient d'où ? C'est toi qui l'a faite ou c'est un page online ?

Risike, C'est un collègue, qui m'a fait cette page sur un serveur, par conséquent je requête le serveur et voilou.

Niveau serveur, j'y connais pas grand chose, la fin de l'url est "?type=search&title=WWE" (c'est tout ce que je peux dire pour le moment)

Il me semble que cela devrait t'aider :

@Override

public boolean shouldOverrideUrlLoading(WebView view, String url)

{

Log.v("CALLED SHOULD OVERRIDE URL LOADING", url.toString());

if (url.contains("http://null")) {

// do something local

return true;

}

else {

view.loadUrl(url);

return false;

}

}

Infernus, je vais voir ca, apparemment il y a une conversion, je vais tester ca

Perso, j'utilise une méthode

requestData()

qui utilise

public static String getHttpResponseAsString(String _url)

puis une conversion de flux

public static String convertStreamToString(InputStream is) throws IOException

:P

Tout ca marche très bien :|

Du coté de ma webview :

/** Define type of mime and encoding **/ 
       final String mimeType = "text/html";
        final String encoding = "utf-8";
        WebView objetview;

        /** Display my webview with his content **/ 
        String mapage = ArticleData.requestData();
        Log.d(TAG, "mapage : " +mapage);       

        objetview= (WebView) findViewById(R.id.data);
        objetview.getSettings().setJavaScriptEnabled(true);
        objetview.loadUrl(SERVER_NAME);
        Log.d(TAG, "objetview : " +objetview);

Lien vers le commentaire
Partager sur d’autres sites

Il me semblait que quand j'avais testé, il n'y avait rien d'autre à faire que d'"Overrider" le chargement de l'url.

Ce que tu dit c'est pour pouvoir récupérer le code source de la page et ensuite le parser ( enfin en faire ce que tu veux ), si tel est le cas je ne procèderai pas comme ca ;)

Lien vers le commentaire
Partager sur d’autres sites

Il me semblait que quand j'avais testé, il n'y avait rien d'autre à faire que d'"Overrider" le chargement de l'url.

Ce que tu dit c'est pour pouvoir récupérer le code source de la page et ensuite le parser ( enfin en faire ce que tu veux ), si tel est le cas je ne procèderai pas comme ca ;)

Je n'ai pas le choix, je dois procéder comme ca !

je peux pas "Overrider", error, you must delete Override..etc

---------------------------------------------------------------------------------------------------------------------------------------------------------------

edit :

Apparemment problème résolu, Infernus, j'ai cherché dans ton sens, et ca me parait pas mal du tout ! :P

objetview.setWebViewClient(new myWebViewClient());

et donc :

private class myWebViewClient extends WebViewClient 
   {
       @Override
       public boolean shouldOverrideUrlLoading(WebView view, String url) 
       {
           view.loadUrl(url);
           return true;
       }
   }

Merci à vous ^^ ;)

Lien vers le commentaire
Partager sur d’autres sites

Mais derien content que je serve a quelque chose ;)

Le seul problème est que j'ai un :

public boolean onTouch(View v, MotionEvent event)

pour afficher un menu, et donc lorsque je clique sur les liens hypertextes, ca "m'actualise la page" et affiche mon menu (alors que je ne voudrais pas qu'il affiche mon menu)

A voir ...

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...