我想将事件添加到iOS设备中的日历,现在我必须将事件添加到defaultCalendarForNewEvents
日历,但我想要的是能够选择已经创建了我想要添加事件的日历。选择日历以添加iOS事件
例如在下面的拍摄可以看出,有一个iPhone的日历,然后可能有1个或几个Gmail的创建
我想要做的是,你可以选择要在其中添加事件的日历,必须先创建此日历,而不是系统选择日历。
有什么建议吗?任何例子?
Pd积:我开始代码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];
}
非常感谢你,我会试试看看它是否适合我,我会告诉你它是否为我服务 – Joacer
我尝试你的代码并且很好地创建一个新的日历,但我希望能够选择一个已经创建的日历,并在该日历中添加事件,也许我对问题的描述不清楚,或引起混淆,现在我将编辑它 – Joacer
是在第二个屏幕截图中,您可以看到。您可以从可用日历中选择日历。 –