我需要Activity
,我必须更新ProgressBar
的进度,并从不同的类中获取值。
在下载类中,我使用此函数来计算进度..
public void publishDownloadProgress(long lengthoffile, long bytesDownloaded){
mFileLength = lengthoffile;
totalBytesDownloaded = bytesDownloaded;
mProgress = ((totalBytesDownloaded*100)/mFileLength);
}
这是为了取得进步
public long getDownloadProgress(){
return mProgress;
}
但是当我使用getDownloadProgress()
时;在我的Activity
中,我只获得了0
这是可以理解的,因为它只能获得一次。
但我喜欢的是一系列持续进度值,我想用它来更新ProgressBar
,怎么做?
答案 0 :(得分:1)
您应多次调用 getDownloadProgress()。
并在两次通话之间设定一段时间。
你得到零,因为第一次进度可能为零。 等待一段时间4ex Thread.sleep(50000);
然后再次调用 getDownloadProgress()您将获得更新值