Android 如何在Web视图加载内容后设置其可见性(View.VISIBLE)?
在我的应用程序中有一个广告web视图,即在活动开始时调用url。 一切都很好,除了一件小事,它更像是一个可见性问题。。。 因此,当我开始活动时,我会看到页面加载。。大约在0.3秒内,文本出现,然后图片出现,所有内容以某种方式从左到右浮动。这不太好,我想将我的webView的可见性设置为VIEW.GONE,直到加载完成,然后我可以将其设置为可见 有没有一个好的、有效的方法来实现这一点? 重要的是,它必须在每个操作系统版本的Android 2.3到4.0上运行。 我已经尝试了onPageFinished和PictureListener,但没有希望,onPageFinished只能在4.0上正常工作,PictureListener适用于图片,这不是在不同广告和不同图片数量的情况下实现这一点的最佳方法。(如果根本没有图片怎么办…)Android 如何在Web视图加载内容后设置其可见性(View.VISIBLE)?,android,android-webview,Android,Android Webview,在我的应用程序中有一个广告web视图,即在活动开始时调用url。 一切都很好,除了一件小事,它更像是一个可见性问题。。。 因此,当我开始活动时,我会看到页面加载。。大约在0.3秒内,文本出现,然后图片出现,所有内容以某种方式从左到右浮动。这不太好,我想将我的webView的可见性设置为VIEW.GONE,直到加载完成,然后我可以将其设置为可见 有没有一个好的、有效的方法来实现这一点? 重要的是,它必须在每个操作系统版本的Android 2.3到4.0上运行。 我已经尝试了onPageFinish
如果你有办法,请告诉我。谢谢大家。您是否尝试过
WebChromeClient
webView.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
if (progress == 100) {
// dismisses the PD
dismissLoadingDialog();
}
}
});
webView.loadUrl("your-Url");
// show message dialog here
createLoadingDialog();
我在2.3到4.0操作系统上使用过此功能,没有任何问题在onPageFinished方法期间使用webview可见性 视图不显示所有页面加载
webView1.setWebViewClient(new WebViewClient(){
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
webView1.setVisibility(View.VISIBLE);
}
与其这样做,为什么不在活动中保留“进度”对话框,不如在webview完全加载数据时关闭“名称结果”。我想完全隐藏我的webView,直到它完成内容加载…为了确定页面加载的进度,无法逃避对onPageFinished()/onProgressChanged()方法的依赖。但是关于可见性的第二个问题,一个可能的解决方法是将webview放在另一个父视图元素中,并利用webview.getParent().setVisibility()方法。