我正在为我的博客创建一个应用。我使用webview在主要活动中加载博客网站。为了提高效率,我使用ProgressBar在网址加载进度时进行加载动画。在调用另一个url时捕获时添加方法,在系统Web浏览器中打开它。
这是我遇到问题的代码。问题是,当程序捕获另一个URL时,它打开一个单独的系统浏览器,但它一直滞后,直到我从Android Studio结束应用程序。有人可以解决这个问题,还是有其他选择吗?
webv.setWebChromeClient(new WebChromeClient(){
@Override
public void onProgressChanged(WebView view, int newProgress) {
super.onProgressChanged(view, newProgress);
if(!webv.getUrl().startsWith("https://lktechtronic.blogspot.com")){
webv.stopLoading();
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(webv.getUrl())));
webv.goBack();
}else if(webv.getUrl().startsWith("https://lktechtronic.blogspot.com")){
loadinglay.setVisibility(View.VISIBLE);
if (newProgress == 100) {
loadinglay.setVisibility(View.GONE);
}
}
}
});
答案 0 :(得分:0)
您可以实现shouldOverrideUrlLoading并使自己的WebView加载任何重定向。