【问题标题】:Set specific time for iphone calendar event为 iphone 日历事件设置特定时间
【发布时间】:2015-08-11 17:28:54
【问题描述】:

您好,我正在尝试将日历事件添加到 iphone 的日历中,但不确定如何设置特定的日期和时间。我已经从这里查看了答案Programmatically add custom event in the iPhone Calendar

所以我目前有:

Store.startDate = [NSDate Date] //this part is what I would like to set a specific year/month/day/hour/minutes at.

任何帮助将不胜感激,谢谢。

【问题讨论】:

    标签: ios iphone calendar


    【解决方案1】:

    看看here

    还有几个例子以及如何使用NSDateComponents

    NSDateComponents *comps = [[NSDateComponents alloc] init];
    
    // date
    [comps setDay:10];
    [comps setMonth:8];
    [comps setYear:2015];
    
    // time
    [comps setHour:17];
    [comps setMinute:13];
    [comps setSecond:21];
    
    NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
    NSDate *date = [gregorian dateFromComponents:comps];
    

    【讨论】:

    • 这太棒了!你能以同样的方式设定时间吗?例如 [comps setHour:11]; [comps setMinute:30];
    【解决方案2】:

    获取当前日期

     NSLocale *en_US_POSIX = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
        assert(en_US_POSIX != nil);
        NSDate *currentTime = [NSDate date];
        NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
        [dateFormatter setLocale:en_US_POSIX];
        [dateFormatter setDateFormat:@"dd-MM-yyyy"];
        NSString *resultString = [dateFormatter stringFromDate: currentTime];
    

    获取当前时间

    NSDate* now = [NSDate date];
        NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierGregorian];
        NSDateComponents *dateComponents = [gregorian components:(NSCalendarUnitHour  | NSCalendarUnitMinute | NSCalendarUnitSecond) fromDate:now];
        NSInteger hour = [dateComponents hour];
        NSString *am_OR_pm=@"AM";
        if (hour>12){
            hour=hour%12;
            am_OR_pm = @"PM";
        }
        NSInteger minute = [dateComponents minute];
        NSString *strTime=[NSString stringWithFormat:@"%02d:%02d %@", hour, minute ,am_OR_pm];
    

    【讨论】:

      猜你喜欢
      • 2015-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-23
      • 2014-02-05
      相关资源
      最近更新 更多