在我的应用程序中,当我在日期选择器中选择一天时,它应该自动计算并显示其他4天,并且它应该在相应的日期通知。对于Eg。如果我输入19-08-2014,它应该计算并显示从19-08-2014(我在datepicker中输入的那天)的第3天,第7天,第14天和第21天。
我将如何实现这一目标。任何帮助将不胜感激。 我添加了当前的代码供您参考。这不符合我的目的。 请帮助。
(IBAction)save:(UIButton *)sender {
NSDate *pickerDate = [self.picker date];
UILocalNotification *localNotif = [[UILocalNotification alloc]init];
//localNotif.alertBody = _enterText.text;
localNotif.alertBody = @"Please Take Your Rabipur Dosage";
localNotif.fireDate = pickerDate;
localNotif.timeZone = [NSTimeZone defaultTimeZone];
localNotif.soundName = (UILocalNotificationDefaultSoundName);
localNotif.applicationIconBadgeNumber = 1;
//localNotif.repeatInterval = NSDayCalendarUnit;
[[UIApplication sharedApplication]scheduleLocalNotification:localNotif];
[self dismissViewControllerAnimated:YES completion:nil];
}
答案 0 :(得分:0)
创建一个包含您要添加的日期差异的NSDateComponents
对象,并通过pickerDate
将其添加到NSCalendar -dateByAddingComponents:toDate:options
。然后根据生成的日期创建通知。
在这种情况下,像这样:
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *offsetComponents = [[NSDateComponents alloc] init];
[offsetComponents setDay:3];
NSDate *reminderDate = [gregorian dateByAddingComponents:offsetComponents toDate:pickerDate options:0];
重复第7天,第14天和第21天。