android WebView 应用内点击超链接不调用系统浏览器
16lz
2021-01-23
public class MainActivity extends Activity {
private WebView mWebView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mWebView = (WebView) findViewById(R.id.webview);
WebSettings setting = mWebView.getSettings();
setting.setPluginState(PluginState.ON);
setting.setJavaScriptEnabled(true);
mWebView.setScrollBarStyle(0);
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
lodurl(view, url);
return false;
}
});
this.mWebView.loadUrl("http://192.168.1.59/assets/widget/");
}
public void lodurl(final WebView webView, final String url) {
new Thread(new Runnable() {
@Override
public void run() {
webView.loadUrl(url);
}
});
}
}
private WebView mWebView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mWebView = (WebView) findViewById(R.id.webview);
WebSettings setting = mWebView.getSettings();
setting.setPluginState(PluginState.ON);
setting.setJavaScriptEnabled(true);
mWebView.setScrollBarStyle(0);
//复写WebViewClient的shouldOverrideUrlLoading()的方法
//如果需要事件处理返回false,否则返回true.这样就可以解决问题了
mWebView.setWebViewClient(new WebViewClient() {@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
lodurl(view, url);
return false;
}
});
this.mWebView.loadUrl("http://192.168.1.59/assets/widget/");
}
public void lodurl(final WebView webView, final String url) {
new Thread(new Runnable() {
@Override
public void run() {
webView.loadUrl(url);
}
});
}
}
更多相关文章
- android EditText 不自动弹出键盘的方法
- Android Studio ADB响应失败解决方法
- android framework 输入事件分析
- android hover监控鼠标移动事件
- Unity 调用 Android Native 方法(一) 获得Android系统音量
- Mac 下面,添加android adb命令(一般环境变量的添加方法)
- Android软键盘挡住输入框的问题及解决方法