【发布时间】:2016-11-16 09:23:08
【问题描述】:
我正在尝试将事件添加到 iOS 设备中的日历,现在我必须将事件添加到 defaultCalendarForNewEvents 日历,但我想要的是能够选择一个已经存在的日历已创建,我想在其中添加事件。
例如在下面的捕获中,可以看到有一个 iphone 日历,然后可能创建了 1 个或多个 gmail
我要做的是你可以选择日历你要在其中添加事件,这个日历必须提前创建,而不是系统选择日历。
有什么建议吗?有什么例子吗?
P.D:我开始使用 objective-c 和 ios 编写代码
添加我正在测试的事件的代码并且它有效:
- (void) addEventCalendar: (Evento_DTO *) evento {
EKEventStore *eventStore = [[EKEventStore alloc] init];
EKEvent *event = [EKEvent eventWithEventStore:eventStore];
EKReminder *reminder = [EKReminder reminderWithEventStore:eventStore];
event.title = @"Test Event";
reminder.title = @"Test reminder";
NSDate *cDate = [NSDate date];
NSLog(@"current date %@", cDate);
/*NSDateComponents *startDateComponents = [[[NSDateComponents alloc] init] autorelease];
[startDateComponents setDay:12];
[startDateComponents setMonth:12];
[startDateComponents setYear:2012];
[startDateComponents setHour:12];
[startDateComponents setMinute:18];
NSDateComponents *endDateComponents = [[[NSDateComponents alloc] init] autorelease];
[endDateComponents setDay:12];
[endDateComponents setMonth:12];
[endDateComponents setYear:2012];
[endDateComponents setHour:12];
[endDateComponents setMinute:18];
[endDateComponents setSecond:20];*/
//event.startDate = cDate;
//event.endDate = [cDate dateByAddingTimeInterval:15.0];
event.startDate = [cDate dateByAddingTimeInterval:((5*60*60) + (30 * 60) + 15)];
event.endDate = [cDate dateByAddingTimeInterval:((5*60*60) + (30 * 60) + 30)];
//event.startDate = [[NSCalendar currentCalendar] dateFromComponents:startDateComponents];
//event.endDate = [[NSCalendar currentCalendar] dateFromComponents:endDateComponents];
reminder.completionDate = [cDate dateByAddingTimeInterval:((5*60*60) + (30 * 60) + 10)];
NSLog(@"startdate %@", event.startDate);
NSLog(@"enddate %@", event.endDate);
[event setCalendar:[eventStore defaultCalendarForNewEvents]];
//[reminder setCalendar:[eventStore defaultCalendarForNewReminders]];
NSError *error = nil;
[eventStore saveEvent:event span:EKSpanThisEvent commit:YES error:&error];
//[eventStore saveReminder:reminder commit:YES error:&error];
}
【问题讨论】:
标签: objective-c ios ios objective-c calendar google-calendar-api