WebView点击打开手机浏览器
有一个 WebView
可以加载针对移动设备优化的 URL(网页)。但是,当我单击链接时,它不会加载到 WebView 内部(应用程序内部),但移动浏览器会打开。
如何防止这种情况发生?
我尝试通过 shouldOverrideUrlLoading()
重载 URL,但没有帮助。
这是一个代码。
webView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = webView.getSettings();
webSettings.setPluginsEnabled(true);
if (Build.VERSION.SDK_INT > 7) {
webSettings.setPluginState(WebSettings.PluginState.ON);
}
webSettings.setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.equals(url)) {
view.loadUrl(url);
return true;
}
return false;
}
@Override
public void onLoadResource(WebView view, String url) {
}
});
webView.loadUrl("http://some-url.com");
编辑
GET
或 POST
发布方法是否与链接点击打开移动网络浏览器有任何关系???
There is a WebView
which loads mobile-optimized URL (webpage). But when I click on a link, it does not load inside of the WebView
(inside of the app), but mobile browser opens.
How to prevent this?
I tried overloading URLs via shouldOverrideUrlLoading()
, but it did not help.
This is a code.
webView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = webView.getSettings();
webSettings.setPluginsEnabled(true);
if (Build.VERSION.SDK_INT > 7) {
webSettings.setPluginState(WebSettings.PluginState.ON);
}
webSettings.setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.equals(url)) {
view.loadUrl(url);
return true;
}
return false;
}
@Override
public void onLoadResource(WebView view, String url) {
}
});
webView.loadUrl("http://some-url.com");
EDIT
Does GET
or POST
posting methods have anything with links' clicks open mobile web browser???
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在
shouldOverrideUrlLoading
中返回true
而不是false
。从文档中:
Return
true
instead offalse
inshouldOverrideUrlLoading
.From the documentation: