将进度条改为双

时间:2013-03-14 19:34:32

标签: android android-progressbar

进展条:

ProgressBar pb = (ProgressBar) findViewById(R.id.progressbar);
pb.setProgress(0);
int k = (int)max;
pb.setMax(k);
int j = (int)(cost);
pb.setProgress(j);

此代码用于进度条,只取一个int值我想更改代码以获取双值

2 个答案:

答案 0 :(得分:5)

你做不到。 ProgressBar窗口小部件仅接受ints的最大和当前进度。您无法控制最小值,因为它总是0

您可以将所需的最大和当前进度值乘以10的幂,这样小数就会消失。 ProgressBar仍将显示与使用小数值相同的进度,因为进度是currentValue/maxValue的比率。由于您将两者乘以相同的数字,因此比率相等。例如:

0.1/10 = 0.01

但是,如果你将0.1和10乘以10除以小数,你得到:

1/100 = 0.01 //Same result

答案 1 :(得分:1)

它只接受整数值。传递double值没有method

public synchronized void setProgress (int progress)

查看android开发者文档。

Parameters
progress    the new progress, between 0 and getMax()