java - 如何使用 Android CountDownTimer 倒计时

标签 java android xml countdown countdowntimer

我是新来的,也是 Android 开发新手,我有一个关于 Android CountDownTimer 的问题。我如何使用 Android 的 CountDownTimer 倒计时到特定日期,比如说 2015 年 11 月 6 日?另外我如何将 Java 代码与相应的 XML 代码一起使用?

我对这个问题( how to countdown to a date )很感兴趣,但无法真正理解发生了什么?有人能抽出一点时间来帮助我吗?

谢谢

最佳答案

这就是你要做的

更新3

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.your_layout);

    TextView tv_countdown = (TextView) findViewById(R.id.your_textview_id);

    Calendar start_calendar = Calendar.getInstance();
    Calendar end_calendar = Calendar.getInstance();

    long start_millis = start_calendar.getTimeInMillis(); //get the start time in milliseconds
    long end_millis = end_calendar.getTimeInMillis(); //get the end time in milliseconds
    long total_millis = (end_millis - start_millis); //total time in milliseconds
    end_calendar.set(2015, 10, 6); // 10 = November, month start at 0 = January

    //1000 = 1 second interval
    CountDownTimer cdt = new CountDownTimer(total_millis, 1000) {
        @Override
        public void onTick(long millisUntilFinished) {
            long days = TimeUnit.MILLISECONDS.toDays(millisUntilFinished);
            millisUntilFinished -= TimeUnit.DAYS.toMillis(days);

            long hours = TimeUnit.MILLISECONDS.toHours(millisUntilFinished);
            millisUntilFinished -= TimeUnit.HOURS.toMillis(hours);

            long minutes = TimeUnit.MILLISECONDS.toMinutes(millisUntilFinished);
            millisUntilFinished -= TimeUnit.MINUTES.toMillis(minutes);

            long seconds = TimeUnit.MILLISECONDS.toSeconds(millisUntilFinished);

            tv_countdown.setText(days + ":" + hours + ":" + minutes + ":" + seconds); //You can compute the millisUntilFinished on hours/minutes/seconds
        }

        @Override
        public void onFinish() {
            tv_countdown.setText("Finish!");
        }
    };
    cdt.start();
}

关于java - 如何使用 Android CountDownTimer 倒计时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32773659/

相关文章:

javascript - 跨浏览器 Javascript XML 解析

xmlvalue 与 XMLAttributeValue

java - Hibernate 将不会更新具有可为空 OrderColumn 的表

java - 从 Windows 命令提示符运行带有 Access 数据库的 Java 应用程序

xml - 向现有元素添加父标签?

android - 如何设置 onClick 来关闭 ImageView 中的 fragment ?

android - 在 fragment android中查看重用

java - 单击微调器项目并调用第二个微调器列表项的 asynctask

java - 如何在堆积条形图中设置背景所有部分的颜色

android - 在 IDE 布局编辑器中检查方向