Как добавить события в iPhone с помощью фреймворка Event Kit - PullRequest
2 голосов
/ 30 июня 2011

Я делаю приложение для ресторана, в котором мне нужно добавить события в календарь, информация о событиях поступает с сервера, если клиент добавляет какое-либо событие, которое должно отображаться в календаре на указанную дату, я использовал работу набора событий и успешно добавил одно событие в календарь, однако, как добавить несколько событий в календарь, используя набор событий.

1 Ответ

20 голосов
/ 30 июня 2011

Прежде всего, добавьте EventKit Framework и импортируйте его в файл .h.Как показано ниже.

#import <EventKit/EventKit.h>

См. Ниже функцию и измените ее в соответствии со своими потребностями.

-(IBAction)AddEvent:(id)sender{
EKEventStore *eventSotre = [[EKEventStore alloc] init];

EKEvent *event = [EKEvent eventWithEventStore:eventSotre];

if([txtTitle.text isEqualToString:@""] || txtTitle.text == NULL)
    txtTitle.text=@"Event Title";

event.title= txtTitle.text; 

NSDate *duedate = pkrDate.date;
event.startDate =duedate;
event.endDate= [[NSDate alloc] initWithTimeInterval:600 sinceDate:duedate];

if(switchAlarm.on==TRUE){
    NSArray *arrAlarm = [NSArray arrayWithObject:[EKAlarm alarmWithAbsoluteDate:duedate]];
    event.alarms= arrAlarm;
}

[event setCalendar:[eventSotre defaultCalendarForNewEvents]];
NSError *err;
BOOL isSuceess=[eventSotre saveEvent:event span:EKSpanThisEvent error:&err];

if(isSuceess){
    UIAlertView *alertview = [[UIAlertView alloc] initWithTitle:@"Event" message:@"Event added in calendar" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
    [alertview show];
    [alertview release];
}
else{
    UIAlertView *alertview = [[UIAlertView alloc] initWithTitle:@"Event" message:[err description] delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
    [alertview show];
    [alertview release];
}
[eventSotre release];
}

Пожалуйста, измените его в соответствии с вашими потребностями.Я просто вставляю его из кода приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...