如何在我的 AppDelegate 上设置多个本地通知?

Posted

技术标签:

【中文标题】如何在我的 AppDelegate 上设置多个本地通知?【英文标题】:How can I set up multiple local notifications on my AppDelegate? 【发布时间】:2013-02-28 17:52:18 【问题描述】:

我想在我的 AppDelegate 上设置多个本地通知,就像这段代码中显示的一样。这可能吗?

另外,我已经在下面的代码中设置了这个通知,但是我怎样才能从周一到周五重复呢?

这是我的代码:

AppDelegate.m

- (void)applicationDidEnterBackground:(UIApplication *)application 
/*
 Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 
 If your application supports background execution, called instead of applicationWillTerminate: when the user quits.
 */

NSCalendar *gregCalendar = [[NSCalendar alloc]initWithCalendarIdentifier:NSGregorianCalendar];

NSDateComponents *dateComponent = [gregCalendar components:NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSWeekdayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit fromDate:[NSDate date]];

[dateComponent setWeekday:5];
[dateComponent setHour:11];
[dateComponent setMinute:26];


UIDatePicker *dd = [[UIDatePicker alloc]init];
[dd setDate:[gregCalendar dateFromComponents:dateComponent]];



UILocalNotification *notification = [[UILocalNotification alloc]init];
[notification setAlertBody:@"Let the Music Play"];
[notification setFireDate:dd.date];
[notification setTimeZone:[NSTimeZone defaultTimeZone]];
[application setScheduledLocalNotifications:[NSArray arrayWithObject:notification]];

谢谢!

【问题讨论】:

【参考方案1】:

将通知的 repeatInterval 属性设置为 NSWeekdayCalendarUnit。

【讨论】:

谢谢,但是我如何将它设置为从星期一到星期五?我不希望它在周六或周日出现。再次感谢。 我是这样设置的:UILocalNotification *notification = [[UILocalNotification alloc]init]; [notification setAlertBody:@"Let the Music Play"]; [notification setFireDate:dd.date]; notification.repeatInterval = NSWeekdayCalendarUnit; [notification setTimeZone:[NSTimeZone defaultTimeZone]];因为有各种Notifications,所以最后我是这样添加的:[application setScheduledLocalNotifications:[NSArray arrayWithObjects:notification, notification1, notification2, notification3, notification4, notification5, nil]];有时候没有火。为什么?

以上是关于如何在我的 AppDelegate 上设置多个本地通知?的主要内容,如果未能解决你的问题,请参考以下文章

如何在我的本地网络上为 IoT 运行 Prometheus?

如何在 AppDelegate 中将视图控制器设置为根视图控制器

如何在 appDelegate 方法上设置 Timer 时间表?

在 AppDelegate 中以编程方式设置 App 入口点

在我的计算机中使用本地主机的多个 wordpress 项目

如何在我的 iPod touch 上查看“本地主机”