java - 如何每 2 秒更改一次 ProgressDialog 的消息?

标签 java android

我有 ProgressDialog,我想每 2 秒更改一次消息。在此代码中,我将进度时间设置为 10 秒。所以我想让它有 5 条消息

private void showProgressDialog() {

    progressDialog = new ProgressDialog(this, getProgressDailogStyle());
    progressDialog.setMessage("Processing ...");
    progressDialog.show();
    progressDialog.setCancelable(false);

    Handler handler = new Handler();
    handler.postDelayed(new Runnable() {
        public void run() {
            progressDialog.dismiss();
            mInterstitialAd.show();
        }
    }, 10000);
}

最佳答案

您可以使用 CountDownTimer

    count = 0;
    progressDialog = new ProgressDialog(this, getProgressDailogStyle());
    progressDialog.setMessage("Processing ...");
    progressDialog.show();
    progressDialog.setCancelable(false);

    new CountDownTimer(10000, 2000) {

        public void onTick(long millisUntilFinished) {
            //here you can have your logic to set message
            count=count+1;
            if (count==1){
                progressDialog.setMessage("Processing 1");
            }else if (count==2){
                progressDialog.setMessage("Processing 2");
            } 
              // until the count = 5 


        }

        public void onFinish() {
            //the progress is finish
            count = 0;
            progressDialog.dismiss();

        }

    }.start();

关于java - 如何每 2 秒更改一次 ProgressDialog 的消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47195081/

相关文章:

java - 在用户输入后更改 Java for Android 中形状的颜色

android - 添加新 Activity 时 AndroidManifest.xml 中的重复属性错误

Java:缓冲图像绕其中心的旋转是倾斜的

java - 带有 cucumber 和 Selenium 的 Maven 显示 0 次运行测试

java - Hibernate 5. 将 SQL DDL 生成到文件中

java - 网络文档的复杂检索

java - 如何在 Android 中将 Google map 的最大缩放级别设置为 30?

java - 在线程中运行函数或在函数中使用线程

java - 在 java 中创建样式 xml 以供查看(按钮)

android - 滚动 ListView 后 onChildClick 事件停止