iOS查找自特定日期以来经过的时间

时间:2013-02-11 20:28:05

标签: ios nsdate nstimeinterval

我一直在玩NSDate和NSTimeInterval尝试从特定日期开始计算时间,但我没有太多运气。

我想指定一个确切的常数日期(2012年1月5日下午2点),并计算以年,小时,分钟,秒为单位的时间,并在屏幕上显示为计数器。

看起来很简单;但是,浏览代码还没有证明我是成功的。

我还希望看到几个月的总时间,几分钟的格式。感谢任何帮助,谢谢!

这个例子我发现我不知道如何自定义:

NSCalendar *c = [NSCalendar currentCalendar];
NSDate *d1 = [NSDate date];
NSDate *d2 = [NSDate dateWithTimeIntervalSince1970:1340323201];//2012-06-22
NSDateComponents *components = [c components:NSHourCalendarUnit fromDate:d2 toDate:d1 options:0];
NSInteger diff = components.minute;

NSDayCalendarUnit|NSHourCalendarUnit|NSMinuteCalendarUnit

1 个答案:

答案 0 :(得分:1)

就像tkanzakic所说的那样,

NSDateComponents* components = [c components:(NSYearCalendarUnit|NSHourCalendarUnit|NSMinuteCalendarUnit|NSSecondCalendarUnit) fromDate:d1 toDate:d2 options:0] ;
NSLog(@"%ld years, %ld hours, %ld minutes, %ld seconds",  components.year, components.hour, components.minute, components.second) ;