用户迟到时的时差,跟踪

时间:2017-04-11 15:25:05

标签: java android

我想计算两个日期之间的分钟差异,如果这个差异是> 0和&lt; 50分钟,我用下一个文本显示文本视图:&#34; X直到限制时间&#34; (按时完成,但接近极限) 如果差异<&lt; 0(已经晚了)textview应该说&#34; X分钟晚了&#34;

现在一切都适用于第一个条件,但对于第二个条件,数字有时会显示740分钟或更大的数字

Date fechaactual = new Date();
long diff = trackingfecha.getTime() - fechaactual.getTime();
long diferenciaminutos = diff / (60 * 1000);
RunneableUpdateUI run = new RunneableUpdateUI();
if(diferenciaminutos < 50) {
    if(diferenciaminutos >= 0) {
        //Show the minutes close to some specific time
        StringBuffer buffer = new StringBuffer();
        buffer.append("te quedan ");
        String minutes = String.format("%02d", diferenciaminutos);
        buffer.append(minutes);
        buffer.append(" min");
        run.toUpdateValue = buffer.toString();
    } else {
       //Here is the problem
        StringBuffer buffer = new StringBuffer();
        String minutes = String.format("%02d", Math.abs(diferenciaminutos));
        buffer.append(minutes);
        buffer.append(" min tarde");
        run.toUpdateValue = buffer.toString();
    }
    timerHandler.post(run);
}

1 个答案:

答案 0 :(得分:-1)

if (0<=x && x < 50)
        {
            // x time to reach
        }
        else
        {
            if (0> x)
            {
                // late
             }
         }

    }

其中x是你的时间差异