SLaks 2013-07-23 08:29 采纳率: 0%
浏览 2876
已采纳

使用计时器显示时间出现的问题

我在程序中使用定时器,我需要显示将来几天剩余的小时,分钟和秒。
我获取了时间,分钟和秒,但是当我在text view上设置时,计时器不启动。

Date date = new Date(2013,Integer.parseInt(datess.get(k).split("-")[1])-1,Integer.parseInt(datess.get(k).split("-")[0]),hours,mins,secs);  
     long dtMili = System.currentTimeMillis();  
     Date dateNow = new Date(dtMili);  
      remain = date.getTime() - dateNow.getTime();
MyCount counter = new MyCount(remain,1000);
            counter.start();
public class MyCount extends CountDownTimer{
    public MyCount(long millisInFuture, long countDownInterval) {
        super(millisInFuture, countDownInterval);
        }
    @Override
    public void onFinish() {
        // TODO Auto-generated method stub

        tv3.setText("done");
    }
    @Override
    public void onTick(long millisUntilFinished) {
        // TODO Auto-generated method stub
        tv3.setText(timeCalculate(millisUntilFinished/1000) + " Countdown");
    }
}
 public String timeCalculate(long ttime)   
   {  
     long  daysuuu,hoursuuu, minutesuuu, secondsuuu;  
     String daysT = "", restT = "";  
     daysuuu = (Math.round(ttime) / 86400);  
     hoursuuu = (Math.round(ttime) / 3600) - (daysuuu * 24);  
     minutesuuu = (Math.round(ttime) / 60) - (daysuuu * 1440) - (hoursuuu * 60);  
     secondsuuu = Math.round(ttime) % 60;  
     if(daysuuu==1) daysT = String.format("%d day ", daysuuu);  
     if(daysuuu>1) daysT = String.format("%d days ", daysuuu);  
     restT = String.format("%02d:%02d:%02d", hoursuuu, minutesuuu, secondsuuu);  
     return daysT + restT;  
   }  

输出:
CSDN移动问答
为什么计时器没有开始?

  • 写回答

1条回答

  • kity 2013-07-23 09:03
    关注

    可以试下下边的方法

    @Override
    public void onTick(long millisUntilFinished) {
            // TODO Auto-generated method stub
    
        tv3.post(new Runnable() {
                    @Override
                    public void run() {
                                txt3.setText(timeCalculate(millisUntilFinished/1000) + " Countdown"); 
                    }
       });
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题