美文网首页
计算两个时间戳之差,以及时间倒计时

计算两个时间戳之差,以及时间倒计时

作者: 庚庚庚 | 来源:发表于2017-11-29 17:00 被阅读0次

项目中提交订单之后,会有付款时间倒计时提醒,不过相关的接口中只提供了订单提交时间戳,没有订单付款超时时间戳,后台规定,订单付款周期为24小时,根据这个需求来进行时间倒计时。

调用以下的方法得出当前时间与超时时间的间距:

//time:周期时间   单位为秒数      timeStamp:订单提交时间戳+ (NSTimeInterval)timerInterval:(NSTimeInterval)interval timeStamp:(NSString *)timeStamp{

//订单下单时间

NSDate *beginDate = [NSDate dateWithTimeIntervalSince1970:[timeStamp intValue]];

//订单超时时间

NSDate *endDate = [NSDate dateWithTimeInterval:interval sinceDate:beginDate];

//当前时间

NSDate *nowDate = [NSDate date];

NSTimeInterval nowInterval = [nowDate timeIntervalSince1970];

NSTimeInterval endInterval = [endDate timeIntervalSince1970];

//得出当前时间与超时时间的间距

NSTimeInterval value = endInterval - nowInterval;

return value;

}

再进行时间的判断,当value > 0 时,计时器启动倒计时,小于等于0时,订单已超时,计时器停止。

当 value > 0时,计时器启动,调用以下方法:

+ (NSString *)countdownTime:(NSTimeInterval)interval{

NSString *timeStr;

int second = (int)interval % 60;//秒

int minute = (int)interval / 60 % 60;

int hours = (int)interval / 3600 % 60;

int day = (int)interval / (24 *3600) % 60;

if (day != 0) {

timeStr = [NSString stringWithFormat:@"%d天%d:%d:%d",day,hours,minute,second];

}else if (day == 0 && hours != 0) {

timeStr = [NSString stringWithFormat:@"%d:%d:%d",hours,minute,second];

}else if (day == 0 && hours == 0 && minute != 0) {

timeStr = [NSString stringWithFormat:@"%d:%d",minute,second];

}else{

timeStr = [NSString stringWithFormat:@"%d",second];

}

return timeStr;

}

计时器不断给控件刷新数据,NSTimer我就不赘述了,效果如下:

相关文章

  • 计算两个时间戳之差,以及时间倒计时

    项目中提交订单之后,会有付款时间倒计时提醒,不过相关的接口中只提供了订单提交时间戳,没有订单付款超时时间戳,后台规...

  • nodejs计算天数差

    计算天数差,主要是得到两个日期的时间戳即可计算。下面代码展示计算狗狗年龄两个日期的时间戳之差

  • Nodejs计算日期天数差

    计算天数差,主要是得到两个日期的时间戳即可计算。 下面代码展示计算狗狗年龄 //两个日期的时间戳之差 var bi...

  • vue倒计时

    根据两个时间戳计算倒计时 定时器

  • iOS 计算两个时间差

    将某个时间戳转化成 时间 计算两个时间点差值

  • 爬虫_018_常用模块time

    time模块常用的两个功能(1)使用time计算时间戳,这样使用两个时间戳相减就能得到程序的运行时间时间戳是指格林...

  • NSDate日常使用方法总结

    (注:持续更新)1、时间转时间戳: 2、时间戳转时间: 3、倒计时

  • iOS计算两个时间戳的时间差

    ``` //计算两个时间戳的时间差 + (NSString*)compareTwoTime:(longlong)t...

  • ios 两个日期之间的时间差

    计算时间差,其实可以通过计算两个时间戳之间的差值,首先拿到两个时间的数据,比如 @“2016-1.19 10:34...

  • iOS时间戳对比倒计时

    需求: Cell中倒计时显示,到期刷新接口,超时数据消失。后端提供订单生成时间戳createdTime。 计算: ...

网友评论

      本文标题:计算两个时间戳之差,以及时间倒计时

      本文链接:https://www.haomeiwen.com/subject/vbfpbxtx.html