当前位置:   article > 正文

Android使用CountDownTimer实现倒计时功能_mydowntimer

mydowntimer



如果时间大于一小时,则显示时  分  秒  ,否则只显示 分 秒,如果不足一分钟,则只显示秒


Activity中的相关声明:

  1. private static final long DOWN_TIMER_COUNT = 3671000;
  2. private MyDownTimer mDownTimer;

onCreate()中

  1. mTimerTv = (TextView)this.findViewById(R.id.timer_notice_tv);
  2. mDownTimer = new MyDownTimer(DOWN_TIMER_COUNT, 1000);
  3. mDownTimer.start();


具体实现的内部类:

  1. class MyDownTimer extends CountDownTimer
  2. {
  3. public MyDownTimer(long millisInFuture, long countDownInterval)
  4. {
  5. super(millisInFuture, countDownInterval);
  6. }
  7. @Override
  8. public void onTick(long mill)
  9. {
  10. long a = mill/1000/3600;
  11. long b = mill/1000%3600/60;
  12. long c = mill/1000%3600%60;
  13. if(mill/1000 >= 3600)
  14. {
  15. mTimerTv.setText(String.format(getString(R.string.sdk_timer_tv_a), a, b, c));
  16. }
  17. else if(mill/1000 >= 60)
  18. {
  19. mTimerTv.setText(String.format(getString(R.string.sdk_timer_tv_b), b, c));
  20. }
  21. else if(mill/1000 > 0)
  22. {
  23. mTimerTv.setText(String.format(getString(R.string.sdk_timer_tv_c), c));
  24. }
  25. }
  26. @Override
  27. public void onFinish()
  28. {
  29. mTimerTv.setVisibility(View.GONE);
  30. showToast("begin to exam");
  31. }
  32. }



strings.xml

  1. <string name="sdk_timer_tv_a" formatted="false">距离考试\n%s时%s分%s秒</string>
  2. <string name="sdk_timer_tv_b" formatted="false">距离考试\n%s分%s秒</string>
  3. <string name="sdk_timer_tv_c" formatted="false">距离考试\n%s秒</string>


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/808971
推荐阅读
相关标签
  

闽ICP备14008679号