如何在5秒钟内显示一个ProgressBar OnButtonClick,然后显示一个TextView?

时间:2019-02-09 10:58:09

标签: java android android-studio

我的应用程序布局上有​​一个ProgressBar,一个EditText,Button和一个TextView。默认情况下,我将Progressbar和TextView设置为INVISIBLE。 My Layout is like this 现在,我需要在单击按钮后显示ProgressBar 5秒钟,然后显示TextView。 如何为此编写Java代码?

单击按钮后,我需要显示ProgressBar 5秒钟,然后显示TextView。

2 个答案:

答案 0 :(得分:3)

在ButtonClick上。

    ProgressDialog progress = new ProgressDialog(this);

    progress.setMessage("Your message");
    progress.show();
    new Handler().postDelayed(new Runnable() {
       @Override
       public void run() {
          progress.dismiss();
       }
   },1000*5);

答案 1 :(得分:2)

您可以像这样使用Handler

final ProgressBar progressBar = findViewById(R.id.progressBar);
final TextView tv = findViewById(R.id.textView);

button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        new Handler().postDelayed(new Runnable(){
            @Override
            public void run() {
                progressBar.setVisibility(View.GONE);
                new Handler().postDelayed(new Runnable(){
                    @Override 
                    public void run() {
                        tv.setVisibility(View.VISIBLE);
                    }
                }, 0);
        }, 5000); //5000 milliseconds = 5 sec
    });
}