使用couchbase

时间:2017-05-05 07:24:43

标签: android couchbase couchbase-lite couchapp

我在我的一个项目中使用来自couchbase的复制服务。 我想使用带有百分比的Progressdialog来显示复制进度。 正如文档所说,我在AsyncTask所以

这样做
 @Override
        protected Void doInBackground(Void... params) {
//other code

    double total = push.getCompletedChangesCount() + pull.getCompletedChangesCount();
    progressDialog.setMax(total);
    progressDialog.setProgress(push.getChangesCount() + pull.getChangesCount());

//.....end }

在log cat上我得到了

  

I / LoginActivity:复制进度= 51029< -this number changes
  I / LoginActivity:复制总数= 56117< -this number更改为   井

我遇到的问题是progressdialog停留在0%,没有显示进度 关于如何解决它的任何想法?

1 个答案:

答案 0 :(得分:0)

doInBackground只执行一次,因此您无法获得对话框的任何更新。

改为使用AsyncTask的onProgressUpdate方法:

@Override
protected void onProgressUpdate(Void... params) {
    super.onProgressUpdate(values);
    double total = push.getCompletedChangesCount() + pull.getCompletedChangesCount();
    progressDialog.setMax(total);
    progressDialog.setProgress(push.getChangesCount() + pull.getChangesCount());
}