我是一个“新手”Android开发人员,我尝试了横向ProgressBar。 我有一点问题,进度在中间停止,直到结束时才继续。
你能帮我吗?
这是我的代码
progress=0;
mProgress = (ProgressBar) findViewById(R.id.progressBar1);
mProgress.setMax(200);
// Start lengthy operation in a background thread
new Thread(new Runnable()
{
public void run()
{
while (mProgressStatus < 100)
{
mProgressStatus = doWork();
// Update the progress bar
mHandler.post(new Runnable()
{
public void run()
{
mProgress.incrementProgressBy(20);
mProgress.setProgress(mProgressStatus);
}
});
}
// Cache la progressBar
mHandler.post(new Runnable()
{
@Override
public void run()
{
mProgress.setVisibility(4);
}
});
}
//---------------------------------Work to do-----------------------
private int doWork()
{
try{
Thread.sleep(50);//5 secondes
}catch(InterruptedException e)
{
e.printStackTrace();
}
return ++progress;
}
//------------------------------------------------------------------
}).start();
}
答案 0 :(得分:0)
您将进度条最大值设置为200:
mProgress.setMax(200);
以后在代码中,当它升至100(半满)时停止。将最大值设置为100或保持运行直到200.