我添加了进度条,我希望它能自动隐藏

问题描述 投票:0回答:1

我想在需要时显示此进度并隐藏其页脚区域。请帮帮我,我不知道该怎么办。

我尝试了progressBarFooter.setVisibility(View.VISIBLE);和progressBarFooter.setVisibility(View.GONE);没用。

public class MainActivity extends AppCompatActivity {

    ProgressBar superProgressBar;
    WebView superWebView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        superProgressBar= findViewById(R.id.myProgressBar);
        superWebView= findViewById(R.id.myWebView);

        superProgressBar.setMax(100);

        superWebView.loadUrl("http");
        superWebView.getSettings().setJavaScriptEnabled(true);

        superWebView.setWebViewClient(new WebViewClient());
        superWebView.setWebChromeClient(new WebChromeClient(){
            @Override
            public void onProgressChanged(WebView view, int newProgress) {
                super.onProgressChanged(view, newProgress);
                superProgressBar.setProgress(newProgress);
            }

            @Override
            public void onReceivedTitle(WebView view, String title) {
                super.onReceivedTitle(view, title);
                getSupportActionBar().setTitle(title);
            }


        });
    }

    @Override
    public void onBackPressed(){
        if (superWebView.canGoBack()){
            superWebView.goBack();
        }
        else {
            finish();
        }
    }
}
java android progress-bar android-progressbar
1个回答
0
投票

这是一种控制进度条的方法。

 superWebView.setWebChromeClient(new WebChromeClient(){
            @Override
            public void onProgressChanged(WebView view, int newProgress) {
                super.onProgressChanged(view, newProgress);
                if(progress < 100 && pbar.getVisibility() == ProgressBar.GONE){
                     superProgressBar.setVisibility(ProgressBar.VISIBLE);
                }
                superProgressBar.setProgress(progress);
                if(progress == 100) {
                     superProgressBar.setVisibility(ProgressBar.GONE);        
                }
            }

         ...
        });
© www.soinside.com 2019 - 2024. All rights reserved.