连续计算实际日期和未来日期之间的时间

时间:2014-12-18 22:58:58

标签: ios objective-c

我很清楚如何计算两个确切日期之间的时间,但我想知道实际日期和下一个星期一下午2:00之间的日期。

作为一个例子,用户可以预订瑜伽课程的地方,有一个课程从每个星期一下午2:00开始。那么如何计算下一个星期一与[NSDate date]相比的日期呢?我想显示下一堂课的剩余时间。

 // Date of the next class - how can i get this date?
// NSDate *nextCourse = [NSDate ??];

  NSCalendar *deviceCalendar = [NSCalendar autoupdatingCurrentCalendar];

  NSDate *date2 = [[NSDate alloc] initWithTimeInterval:nextCourse sinceDate:date1];

  unsigned int unitFlags = NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;

  NSDateComponents *conversionInfo = [deviceCalendar components:unitFlags fromDate:date1  toDate:date2  options:0];

1 个答案:

答案 0 :(得分:1)

我可以推荐名为DateTools的第三方库https://github.com/MatthewYork/DateTools

具体来说,您可以使用:daysUntil:,hoursUntil:,minutesUntil:methods。

例如:

double hoursUntilClass = [date2 hoursUntil];
相关问题