【问题标题】:Progressdialog stuck using couchbaseProgressdialog 卡在沙发底座上
【发布时间】:2017-05-05 07:24:42
【问题描述】:

我在我的一个项目中使用来自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 }

在日志猫我得到

I/LoginActivity:复制进度 = 51029 I/LoginActivity:复制总数 = 56117

我遇到的问题是进度对话框卡在 0%,没有显示进度。
关于如何解决它的任何想法?

【问题讨论】:

    标签: android couchbase couchbase-lite couchapp


    【解决方案1】:

    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());
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多