【问题标题】:Set a fixed date for a fireDate? xcode为 fireDate 设置固定日期?代码
【发布时间】:2011-10-13 15:16:09
【问题描述】:

我需要设置几个 fireDates。我想知道如何将闹钟设置到特定的日期和时间?

【问题讨论】:

    标签: objective-c nsdate nstimer


    【解决方案1】:
    NSDate *date = //set the date
    NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1000 target:target selector:@selector(aSelector) userInfo:userInfo repeats:NO];
    [timer setFireDate:date]; 
    

    NSDate *date = //set the date
    NSTimer *timer = [[[NSTimer alloc] initWithFireDate::1000 target:target selector:@selector(aSelector) userInfo:userInfo repeats:NO] autorelease];
    [timer setFireDate:date]; 
    [[NSRunLoop currentRunLoop] addTimer:timer forMode:currentMode];
    

    【讨论】:

      【解决方案2】:

      我知道它可能早就应该这样做,但这是我对它的看法:

      NSDateComponents *dateComponents = [[NSDateComponents alloc] init];
      [dateComponents setHour:13];
      [dateComponents setMinute:0];
      [dateComponents setSecond:0];
      [dateComponents setDay:17];
      [dateComponents setMonth:12];
      [dateComponents setYear:2012];
      NSCalendar *gregorian = [[NSCalendar alloc]
                           initWithCalendarIdentifier:NSGregorianCalendar];
      NSDate *date = [gregorian dateFromComponents:components];
      

      检查此以获得更好的参考https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/DatesAndTimes/Articles/dtCalendars.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-20
        • 1970-01-01
        • 2022-10-15
        • 2015-03-06
        • 1970-01-01
        • 2023-03-19
        相关资源
        最近更新 更多