2015-04-07 75 views
0

self.eventStore = [[EKEventStore alloc] init];爲什麼添加事件時要更改時間

NSLog(@"check addevent time :%@",self.date); 

如果([_eventStore respondsToSelector:@selector(requestAccessToEntityType:完成:)])

{ 
    [_eventStore requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) { 
     if (granted){ 
      addEventgranted = 1; 
      EKEvent *event = [EKEvent eventWithEventStore:_eventStore]; 
      [event setTitle:self.showNameTitle]; 
      [event setStartDate: self.date]; 
      [event setEndDate:[[NSDate alloc]initWithTimeInterval:self.duration sinceDate:event.startDate]]; 
      NSTimeInterval alarmOffset = -300; 
      EKAlarm *alarm = [EKAlarm alarmWithRelativeOffset:alarmOffset]; 
      [event addAlarm:alarm]; 

      [event setCalendar:[_eventStore defaultCalendarForNewEvents]]; 
      NSError *err; 
      [_eventStore saveEvent:event span:EKSpanThisEvent error:&err]; 

      NSLog(@"Check error %@",err); 
      self.str = [[NSString alloc] initWithFormat:@"%@", event.eventIdentifier]; 
      NSLog(@"check self.str :: %@",self.str); 

我添加事件

之前登錄了這一點::檢查的addEvent時間:2015-04-07 13:55:00 +0000

但是當添加時間chan ge到

8:55 PM

回答

1

嘿,這個日誌顯示了你的格林威治時間時間。 不要擔心這是您保存的正確數據。 只需使用日期格式化程序來記錄數據。 您將得到正確的日期日誌。 使用以下語法記錄您的日期。

NSDate* dateTime = [NSDate date]; 
NSTimeZone *timeZone = [NSTimeZone defaultTimeZone]; 


NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setTimeZone:timeZone]; 
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:SS.SSS'Z'"]; 
NSString* stringDate = [dateFormatter stringFromDate:dateTime]; 

NLog(@"%@",stringDate); 
相關問題