2011-08-31 103 views
1

我正在开发一个iPhone应用程序,要求在每个工作日的特定时间发布通知。我已经通过调度其repeatInterval属性设置为kCFCalendarUnitWeekday的UILocalNotification来完成此任务。UILocalNotification每个工作日重复节假日除外

问题是警报不应该在节假日出现。我的应用程序中有一个配置文件中保存了10个假期的列表。有没有办法阻止这些日子显示通知?当应用程序在前台或后台运行时,最好在关闭时显示此通知,尽管我认为应用程序关闭时我可以接受它不显示。

回答

1

我从这篇文章复制了这个答案:https://stackoverflow.com/posts/7257168/edit但记得这个问题。它也回答你的问题

正如你可以从repeatInterval属性看到的那样,你只能指定预定义的日历单元。

enum { 
    NSEraCalendarUnit = kCFCalendarUnitEra, 
    NSYearCalendarUnit = kCFCalendarUnitYear, 
    NSMonthCalendarUnit = kCFCalendarUnitMonth, 
    NSDayCalendarUnit = kCFCalendarUnitDay, 
    NSHourCalendarUnit = kCFCalendarUnitHour, 
    NSMinuteCalendarUnit = kCFCalendarUnitMinute, 
    NSSecondCalendarUnit = kCFCalendarUnitSecond, 
    NSWeekCalendarUnit = kCFCalendarUnitWeek, 
    NSWeekdayCalendarUnit = kCFCalendarUnitWeekday, 
    NSWeekdayOrdinalCalendarUnit = kCFCalendarUnitWeekdayOrdinal 
    NSQuarterCalendarUnit = kCFCalendarUnitQuarter, 
}; 

所以,如果你想在通知上重复这些上述区间,你可以使用按repeatInterval财产与其中的任何值。但是,如果您希望通知在间隔时间内重复,例如“每两天”或以某些不规则间隔重复播放,则必须为每个提醒创建单独的通知。

+0

好的,谢谢你的回答。 – Darren

相关问题