我有一个测试用例,作为其中的一部分,我需要在UI上使用线程同时显示两个进度条。如果可能,任何人都可以帮助我吗?
答案 0 :(得分:2)
您可以使用两个线程显示两个进度条,如下所示
final ProgressBar p1 = (ProgressBar) this.findViewById(R.id.progressBar1);
final ProgressBar p2 = (ProgressBar) this.findViewById(R.id.progressBar2);
p1.setMax(20);
p2.setMax(20);
Thread thread = new Thread()
{
@Override
public void run() {
try {
Looper.prepare();
while(seconds1 > 0) {
sleep(1000);
seconds1--;
runOnUiThread(new Runnable() {
@Override
public void run() {
p1.setProgress(seconds1);
}
});
}
} catch ( InterruptedException e) {
e.printStackTrace();
}
}
};
thread.start();
Thread thread2 = new Thread()
{
@Override
public void run() {
try {
Looper.prepare();
while(seconds2 < 20) {
sleep(1000);
seconds2++;
runOnUiThread(new Runnable() {
@Override
public void run() {
p2.setProgress(seconds2);
}
});
}
} catch ( InterruptedException e) {
e.printStackTrace();
}
}
};
thread2.start();