所以现在在我的应用程序中,我访问的网址有一个重定向,当这种情况发生时,WebView会打开一个新的浏览器,而不是停留在我的应用程序中。有没有一种方法可以改变设置,让视图像平常一样重定向到URL,但留在我的应用程序中而不是打开新的浏览器?
编辑:
我想要重定向URL,我只是不知道如何创建它,所以到达该URL的唯一方法是通过一个将导致重定向到我想要的URL。
例如:当您转到此处:http://www.amazon.com/gp/aw/s/ref=is_box_/k=9780735622777时,请注意它将如何将URL重定向到实际产品。在我的应用程序中,如果我在新的浏览器中打开它,它会做得很好,但是如果我用WebView将它保留在我的应用程序中,它会显示出好像在搜索k=9780735622777,就像这样:http://www.amazon.com/gp/aw/s/ref=is_s_?k=k%3D9780735622777&x=0&y=0。或者,它将在浏览器中打开视图并显示合适的内容。然而,我想把所有东西都保留在我的应用程序中。
发布于 2010-11-01 11:34:42
创建一个WebViewClient,并覆盖shouldOverrideUrlLoading方法。
webview.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url){
// do your handling codes here, which url is the requested url
// probably you need to open that url rather than redirect:
view.loadUrl(url);
return false; // then it is not handled by default action
}
});
发布于 2013-09-21 00:47:16
根据官方documentation的说法,点击WebView中的任何链接都会启动一个处理URL的应用程序,默认情况下是一个浏览器。您需要覆盖默认行为,如下所示
myWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
return false;
}
});
发布于 2015-11-26 04:18:51
只需添加一个默认的自定义WebViewClient
即可。这使得WebView自己处理任何加载的urls。
mWebView.setWebViewClient(new WebViewClient());
https://stackoverflow.com/questions/4066438
复制相似问题