代码
progressBar = (ProgressBar) findViewById(R.id.progressBar);
textView = (TextView) findViewById(R.id.secdelay);
// Start long running operation in a background thread
new Thread(new Runnable() {
public void run() {
while (progressStatus < 15) {
progressStatus += 1;
// Update the progress bar and display the
//current value in the text view
handler.post(new Runnable() {
public void run() {
progressBar.setProgress(progressStatus);
textView.setText(progressStatus+"/"+progressBar.getMax());
}
});
try {
// Sleep for 200 milliseconds.
//Just to display the progress slowly
Thread.sleep(1500);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}).start();
现在它的加载很好,我想进步吧15ec怎么办?希望你们明白是什么意思。一个15秒的加载进度条,我看到它跳动画,任何方式使它平滑。在此先感谢noob问题对不起只是一个学习者
答案 0 :(得分:0)
您可以将进度条的最大值设置为15秒* 5 = 75,以便更新较小的“咬伤”。为了更流畅的动画。
然后每200ms更新一次进度。
progressBar.setMax(75)
while (progressStatus < 75) {
progressStatus += 1;
// Update the progress bar and display the
//current value in the text view
handler.post(new Runnable() {
public void run() {
progressBar.setProgress(progressStatus);
textView.setText(progressStatus+"/"+progressBar.getMax());
}
});
try {
// Sleep for 200 milliseconds.
//Just to display the progress slowly
Thread.sleep(200);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
最多150也可以只睡100毫秒。