WebView navegar pela aplicação

375 views
Skip to first unread message

Iv@n JAVA

unread,
Mar 23, 2012, 9:18:48 AM3/23/12
to Android Brasil - Dev
Bom dia a todos peguei um exemplo do livro Google Android 2ed. onde
tem um código de web view que é assim

pegarParametros();

WebView web = new WebView(this);
WebSettings webSettings = web.getSettings();
webSettings.setSavePassword(false);
webSettings.setSaveFormData(false);
webSettings.setJavaScriptEnabled(true);
webSettings.setSupportZoom(false);

web.loadUrl("http://www.google.com.br");
setContentView(web);

Funcionou perfeitamente porém eu notei que ao clicar em um link ele
abre no próprio Browser do android onde tem suas próprias
configurações e ele pode alterar o link navegado. O que eu queria é
saber se é possível manter a navegação dos links no meu WebView?
Pesquisando um pouco vi a classe WebViewClient que eu posso sobrepor o
método shouldOverrideUrlLoading que acredito irá resolver ou existe
outra maneira?

Iv@n Java

unread,
Mar 23, 2012, 9:39:15 AM3/23/12
to Android Brasil - Dev
Funcionou aqui fiz usando o shouldOverrideUrlLoading ficou assim:

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

depois chamei no meu WebView

meuWebView.setWebViewClient(new MyWebViewClient());

assim posso até controlar os links navegados, flw!

Thiago Lopes Rosa

unread,
Mar 23, 2012, 10:22:18 AM3/23/12
to androidb...@googlegroups.com
Na verdade você deveria apenas retornar false e não fazer o loadUrl.


Thiago


2012/3/23 Iv@n Java <x.sur...@gmail.com>

Iv@n Java

unread,
Mar 23, 2012, 10:31:13 AM3/23/12
to androidb...@googlegroups.com
Vlw thiago, também funcionou beleza da forma anterior se eu retorno verdadeira quer dizer que eu não quero mudar de página eu só mudei porque havia alterado o loadUrl.
Reply all
Reply to author
Forward
0 new messages