Java 数到0到100
倒计时0到100安卓 我是android的初学者,你们能帮我吗。 结果必须是倒计时结束。 例如,结果值为75。倒计时将从0开始到75结束Java 数到0到100,java,android,Java,Android,倒计时0到100安卓 我是android的初学者,你们能帮我吗。 结果必须是倒计时结束。 例如,结果值为75。倒计时将从0开始到75结束 mCalculate.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { showResult(); new CountDownTimer(30000, 1
mCalculate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showResult();
new CountDownTimer(30000, 100){
public void onTick(long millisUntilFinished){
waveLoadingView.setProgressValue(counter);
waveLoadingView.setCenterTitle(String.format("%d%%",result)); //result is the value from randomize 60 to 80 .
result++;
}
public void onFinish(){
}
}.start();
}
});
试试下面的代码
mCalculate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showResult();
new CountDownTimer(result*1000, 1000){
public void onTick(long millisUntilFinished){
waveLoadingView.setProgressValue(counter);
waveLoadingView.setCenterTitle(String.format("%d%%",newResult)); //newResult is temp value initialize with 0
newResult++;
}
public void onFinish(){
}
}.start();
}
});
在实例化用例时,您只需要使用匹配的参数,请查看CountDownTimer构造函数方法。当您想要创建一个从0到100的倒计时,并且只需1秒的步骤时,您可以这样构造代码:
final long ONE_SECOND = 1000;
final long ONE_HUNDRED_SECOND = 100 * ONE_SECOND;
new CountDownTimer(ONE_HUNDRED_SECOND, ONE_SECOND){
public void onTick(long millisUntilFinished) {
int second = millisUntilFinished / ONE_SECOND;
int counter = second - 1;
// do something with the counter value
}
public void onFinish() {
// do something when we finished the count down.
}
}.start();
对不起,我更改了上面的问题,结果必须是倒计时结束。例如,结果值为75。倒计时将开始到0结束到75。倒计时将开始到75。倒计时的时间间隔为1秒。结果是整数。它正在工作,但即使我更改倒计时间隔,倒计时也会变慢。倒计时间隔为1秒。现在可以了。我更改了新的倒计时(结果*50,500)
// result varible define as a public
long result = 80;
mCalculate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new CountDownTimer(result * 1000, 100) {
public void onTick(long millisUntilFinished) {
// its start with 1 if you want start with 0 then replace with below code
//int sec = (int) (result - (millisUntilFinished / 1000)-1);
int sec = (int) (result - (millisUntilFinished / 1000));
waveLoadingView.setProgressValue(sec);
waveLoadingView.setCenterTitle(String.valueOf(result)); //result is the value from randomize 60 to 80 .
}
public void onFinish() {
}
}.start();
}
});