我在我的android应用程序中有一个webview,但当有人在网站周围导航时,它会在一个新窗口中打开,我希望它留在webview中。有没有容易做到这一点的方法?以下是我的活动中的代码:
super.onCreate(savedInstanceState);
setContentView(R.layout.shop);
WebView webview;
webview = (WebView) findViewById(R.id.webview);
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl("http://www.google.co.uk");
发布于 2012-11-25 00:16:00
您必须创建一个WebViewClient
public class myWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
然后将其设置为WebView
,如下所示:
webview.setWebViewClient(new myWebViewClient());
发布于 2013-08-26 05:44:16
或者,您可以直接执行此操作,而无需创建新类:
myWebView.setWebViewClient(new WebViewClient());
这对我很管用。
发布于 2019-05-17 10:34:09
webview.setWebViewClient(new WebViewClient());
如果你想要定制,那么你应该覆盖shouldOverrideUrlLoading (WebView view, String url)
。但它在API 24中已被弃用。您可以使用public boolean shouldOverrideUrlLoading (WebView view,WebResourceRequest request)
。实际上,它们都需要返回false。
https://stackoverflow.com/questions/13542982
复制相似问题