i tried to set multiple alarm from a start date to end date
fivetimearray time array
fivetimearray=(
"01:00:00",
"02:00:00",
"03:00:00",
"04:00:00",
"16:00:00"
)
//code i used to set multiple alarm
EKEvent *event = [EKEvent eventWithEventStore:eventStore];
event.title = aTitle;
event.allDay = YES;
event.startDate =myStartDate;
event.endDate =myEndDate;
[event setCalendar:[eventStore defaultCalendarForNewEvents]];
NSMutableArray *myAlarmsArray = [[NSMutableArray alloc] init];
for (int i=0; i<[fivetimearray count]; i++)
{
// Get the current date
NSDate *pickerDate = myStartDate;
NSCalendar *calendar = [NSCalendar autoupdatingCurrentCalendar];
// Break the date up into components
NSDateComponents *dateComponents = [calendar components:( NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit )
fromDate:pickerDate];
NSDateComponents *timeComponents = [calendar components:( NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit )
fromDate:pickerDate];
// Set up the fire time
NSDateComponents *dateComps = [[NSDateComponents alloc] init];
[dateComps setDay:[dateComponents day]];
[dateComps setMonth:[dateComponents month]];
[dateComps setYear:[dateComponents year]];
NSString *timeString=[NSString stringWithFormat:@"%@",[fivetimearray objectAtIndex:i]];
NSArray *datearray=[timeString componentsSeparatedByString:@":"];
int date_hour;
int date_minute;
int date_second;
date_hour=[[NSString stringWithFormat:@"%@",[datearray objectAtIndex:0]] integerValue];
date_minute=[[NSString stringWithFormat:@"%@",[datearray objectAtIndex:0]] integerValue];
date_second=[[NSString stringWithFormat:@"%@",[datearray objectAtIndex:0]] integerValue];
// Notification will fire in one minute
[dateComps setHour:date_hour];
[dateComps setMinute:date_minute];
[dateComps setSecond:date_second];
NSDate *itemDate = [calendar dateFromComponents:dateComps];
EKAlarm *alarm = [EKAlarm alarmWithAbsoluteDate:itemDate];
[myAlarmsArray addObject:alarm];
[event addAlarm:alarm];
}
NSLog(@"myAlarmsArray=%@",myAlarmsArray);
// event.alarms = myAlarmsArray;
NSError *err;
[eventStore saveEvent:event span:EKSpanThisEvent error:&err];
savedEventId = event.eventIdentifier; //this is so you can access this event later
NSLog(@"saveEventId=%@",savedEventId);
if(err)
NSLog(@"unable to save event to the calendar!: Error= %@", err);
}
here is my alarm set aray
myAlarmsArray=(
"EKAlarm <0xb9efd70> {triggerDate = 2014-12-31 19:31:01 +0000}",
"EKAlarm <0xb9b0a90> {triggerDate = 2014-12-31 20:32:02 +0000}",
"EKAlarm <0xb9c9230> {triggerDate = 2014-12-31 21:33:03 +0000}",
"EKAlarm <0xb9af1c0> {triggerDate = 2014-12-31 22:34:04 +0000}",
"EKAlarm <0xba9c8d0> {triggerDate = 2015-01-01 10:46:16 +0000}"
)
But when i check calender it only shows two times of alert? Is it not increase for 5 alarm alert?
check screenshot
Aucun commentaire:
Enregistrer un commentaire