通过CountDownTimer显示十进制的简单方法 - Android

时间:2011-06-02 02:11:54

标签: java android decimal long-integer countdown

我有工作代码,但似乎有点奇怪,我必须在CountDownTimer上显示小数位,但我没有发现任何更容易(显然)。

以下是我目前的工作代码:

    final String tempTitle = TextView.getText().toString();

    new CountDownTimer(10000, 100) {

                 public void onTick(long millisUntilFinished) {
                     String timeDown = String.valueOf(millisUntilFinished / 100);
                     String secTime="0";
                     String sec10th="0";
                     if (Long.valueOf(millisUntilFinished) < 1000) {
                     secTime ="0";
                     sec10th = timeDown.substring(0,1);
                     }else{
                     secTime=timeDown.substring(0,1);
                     sec10th = timeDown.substring(1,2);
                     }

                     TextView.setText("Start in: " + secTime + "." + sec10th);
                 }

                 public void onFinish() {
                     TextView.setText(tempTitle);
                 }
              }.start(); 


    }

1 个答案:

答案 0 :(得分:4)

除以100.0,所以你不做整数除法。

根据您的评论进行修改:  你可以做到

DecimalFormat df=new DecimalFormat("#.##"); //import java.text.DecimalFormat;
String timeDown=df.format(millisUntilFinished/100.0);

或#。###等取决于你想要多少小数......