【问题标题】:iPhone NSDate questioniPhone NSDate 问题
【发布时间】:2010-10-17 00:51:40
【问题描述】:

我正在尝试完成一些 AppsAmuck 教程,但它们似乎大多使用 Apple 已弃用的代码。例如,有一个计时器每秒调用一次的函数,如下所示:

NSDate *now = [NSDate date];
    int hour = 23 - [[now dateWithCalendarFormat:nil timeZone:nil] hourOfDay];
    int min = 59 - [[now dateWithCalendarFormat:nil timeZone:nil] minuteOfHour];
    int sec = 59 - [[now dateWithCalendarFormat:nil timeZone:nil] secondOfMinute];
    countdownLabel.text = [NSString stringWithFormat:@"%02d:%02d:%02d", hour, min,sec];

很遗憾,这些都不适用于当今的 SDK。我一直盯着 Apple 的 NSDate 文档看,我无法将上述函数的意图翻译成当今的 NSDate 术语。

【问题讨论】:

标签: iphone nsdate


【解决方案1】:

这是我用的……但还有其他方法

NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *dateComponents = [gregorian components:(NSHourCalendarUnit  | NSMinuteCalendarUnit | NSSecondCalendarUnit) fromDate:[NSDate date]];
NSInteger hour = [dateComponents hour];
NSInteger minute = [dateComponents minute];
NSInteger second = [dateComponents second];
[gregorian release];

从当前返回小时、分钟和秒

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-16
    • 1970-01-01
    相关资源
    最近更新 更多