如何在工作日的选择列表中设置重复UILocal通知

时间:2013-03-11 15:33:48

标签: iphone objective-c uilocalnotification localnotification

我已使用以下链接

实施 UILocal通知

http://useyourloaf.com/blog/2010/07/31/adding-local-notifications-with-ios-4.html

我已修改它以使用

在每天设置重复通知
//To set the repeat notification
            notif.repeatInterval = NSDayCalendarUnit;

例如ex 每天上午10点

但我的要求是用户需要在选定的周日(星期一至星期日)设置通知

为什么因为用户可能有每周假期(周六和周日)/周五 - 周日)/其他几天 ..

week offs he shouldn't fire the notifications.

上的

因此,我们祝贺用户设置所选的工作日,通知将仅在那些日期设置..一旦用户设置了通知。

For ex:

我们有工作日Sun,MOn,星期二,星期三,星期四,星期五,星期六

那些用户选择周一,周二,周二,周四。并设置为10Am

然后,通知将在每天上午10点开启。

怎么做

1 个答案:

答案 0 :(得分:8)

UILocalNotification的API在这方面非常有限 - 您必须在用户选择的日期手动安排每周重复的4个事件。

为星期一安排重复计时器的示例如下所示

NSDateComponents *dateComponents = [[NSDateComponents alloc] init];
dateComponents.weekday = 2; // sunday = 1 ... saturday = 7
dateComponents.hour    = 10;

UILocalNotification *notification = //...
notification.repeatInterval = NSWeekCalendarUnit;
notification.fireDate       = [calendar dateFromComponents:dateComponents];

可以在NSDateComponents Class Reference

中找到日期编号