-1

刚开始学习一些objective-C,我正在写一段代码来找出我活了多少秒:

    NSDateComponents *comps = [[NSDateComponents alloc] init];
                      [comps setYear:1990];
                      [comps setMonth:2];
                      [comps setDay:12];
                      [comps setHour:1];
                      [comps setMinute:1];
                      [comps setSecond:0];

                               NSCalendar *g = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
                               NSDate *dateOfBirth = [g dateFromComponents:comps];

                     double d = [g timeIntervalSinceDate:dateOfBirth]; // getting error "no visible @interface for NSCalander declares the select timeIntervalSince"

                     NSLog(@"i have been alive for %d", d);

关于此错误还有其他一些问题,但我似乎无法在我的代码中使用任何答案。

任何帮助都会很棒,干杯!

4

1 回答 1

3

" timeIntervalSinceDate:"是 NSDate 上的一种方法,而不是 NSCalendar。

如果您将代码更改为:

NSTimeInterval d = [[NSDate date] timeIntervalSinceDate: dateOfBirth];

你可能会有更快乐的结果(我的一行代码应该给你现在的日期/时间和出生日期之间的时间间隔)。

于 2013-06-15T12:47:48.177 回答