1

我的 Android 应用程序中有一个 WebView。

我敬酒以显示加载进度。

    webView.setWebChromeClient(new WebChromeClient() {
        @Override
        public void onProgressChanged(WebView view, int progress) {
            super.onProgressChanged(view, progress);

            toast.setText("Loading..." + String.valueOf(progress) + "%");
            toast.show();
        }
    });

问题是当我按下“主页”按钮或启动另一个活动时,它仍然会不断更新并显示吐司。

有没有办法检查当前的活动是否正在显示?

例如:

if(getActivity().isVisible())
   toast.show();
4

1 回答 1

4

您可以在 onStop() 中为自己设置一个布尔标志,当您从屏幕上移除时会调用该标志。

private boolean amShowing = false;

protected void onStart(){
    super.onStart();
    amShowing = true;
}

protected void onStop() {
    super.onStop();
    amShowing = false;
}

当您使用 if 语句时,您可以使用

if(amShowing) {
   toast.show();
}
于 2013-03-04T19:33:14.060 回答