【问题标题】:Progressbar for two or more operations两个或更多操作的进度条
【发布时间】:2014-10-14 04:35:54
【问题描述】:

我在 AsyncTask 的 doInBackground 方法中有这段代码:

    for (int i = 0; i < lenght; i++) {
        // Do something

        count++;
        publishProgress(count * 100 / lenght);
    }

一切正常。如果我添加另一个操作,如何通过进度条反映这一点?

现在我有了这个代码:

    for (int i = 0; i < lenght1; i++) {
        // Do something

        count++;
        publishProgress(count * 100 / lenght1);
    }

    for (int i = 0; i < lenght2; i++) {
        // Do something 

        count++;
        publishProgress(count * 100 / lenght2);
    }

如何让条形图在操作 1 开始时从 0 开始,在操作 2 结束时在 100 结束?我试图将 count*100 更改为 count*50 但这似乎不是正确的方法...

【问题讨论】:

    标签: android android-asynctask progress-bar percentage onupdate


    【解决方案1】:

    找到一个涉及length1和length2的算术公式,据此公布进度。

    例如,如果您想对计数的每次增加赋予相同的权重,并且 100% 意味着计数 == 长度 1+长度 2,那么您可以使用如下内容:publishProgress(count * 100 / (length1+length2));

    【讨论】:

    • 这就是我想要的!我尝试了几个公式,除了你的:P
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多