【问题标题】:android webview stay in appandroid webview留在应用程序中
【发布时间】:2012-11-12 15:20:16
【问题描述】:
我的 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");
【问题讨论】:
标签:
java
android
webview
android-widget
【解决方案1】:
你必须创建一个WebViewClient:
public class myWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
然后将其设置为您的WebView,如下所示:
webview.setWebViewClient(new myWebViewClient());
【解决方案2】:
或者你可以这样做,而不创建新类:
myWebView.setWebViewClient(new WebViewClient());
它对我有用。
【解决方案3】:
webview.setWebViewClient(new WebViewClient());
如果要自定义,则应覆盖 shouldOverrideUrlLoading (WebView view, String url)。但它在 API 24 中已被弃用。您可以使用public boolean shouldOverrideUrlLoading (WebView view,WebResourceRequest request)。实际上他们都需要返回false。
Android WebView Example