【问题标题】:Android calculate remaining time [duplicate]Android计算剩余时间[重复]
【发布时间】:2014-07-30 14:51:00
【问题描述】:

我想在 android 中做一个应用程序,例如,如果我们编写一些任务,应用程序会发出通知,如果 currenttime=timewespeciefied. 我已经有一个包含用户指定时间的数组。 这里的问题是计算剩余时间! 有计算剩余时间的课程吗? 就我而言,我有多个任务,所以我必须检查表中任务中的时间是否已经完成。

void LeftTime(){
currenttime.settonow();
            Time LeftTime=new Time();
            for (int i = 0; i <TaskTable.length ; i++) {
                if(currenttime.hour<=TaskTable[i].hour)
                    if(TaskTable.minute==0) LeftTime.minute=60-TaskTable[i].minute;
                if(TaskTable[i].minute<currenttime.minute)
                    LeftTime.minute=currenttime-Tasktable[i].minute;
                            else
                    LeftTime.minute=60-currenttime+Tasktable[i].minute;
            }

有多个案例!我该怎么做。

【问题讨论】:

  • 你能举一个你想要的输出的例子吗?例如,String 写着“1 小时 43 分钟”?
  • 例如:现在时间 01:10,用户在 02:03 有任务输出必须是:剩余时间为:0h 53minute @DanS
  • 这不是我想要的!我想计算剩余时间我有一个包含例如 5 或 6 个任务(时间)的数组,然后我必须将当前时间与任务表进行比较
  • 对不起,这是一次错误的点击,我已经撤回了错误的投票并删除了错误的评论。
  • 没问题谢谢解答!

标签: android time countdowntimer


【解决方案1】:

String 系列在 DateUtils 中生成的静态函数可以完成您的任务。例如:

// Example 1
// Date then; // When the notification will occur
Date now = new Date();
String remaining1 = DateUtils.formatElapsedTime ((then.getTime() - now.getTime())/1000); // Remaining time to seconds
// remaining1: "MM:SS"

// Example 2
String remaining2 = DateUtils.formatElapsedTime (60 * 64 + 8); // 64 minutes in seconds and 8 seconds
// remaining2: "64:08"

【讨论】:

  • 谢谢你我正在搜索的内容!
  • 说运算符 '-' 不能应用于 java.util.Date、java.util.Date。我正在计算从自定义日期到当前日期的剩余时间。
  • @DeepakJ 不要忘记调用.getTime() - 运算符采用数字原语。其他语言允许重载运算符,但 Java 不允许。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-26
  • 1970-01-01
  • 2014-03-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多