更改已设置 UILocalNotification 的 soundName

Posted

技术标签:

【中文标题】更改已设置 UILocalNotification 的 soundName【英文标题】:Change soundName of already set UILocalNotification 【发布时间】:2013-02-03 16:18:29 【问题描述】:

对于尚未创建的通知(新通知)进行更改,但对于已创建的通知,将保留之前的声音。

我试过了:

NSString *soundName = cell.titleLabel.text;

NSArray *notifications = [[UIApplication sharedApplication] scheduledLocalNotifications];

for (UILocalNotification *notif in notifications) 
    notif.soundName = [NSString stringWithFormat:@"%@.mp3", soundName];

但它不起作用......

【问题讨论】:

【参考方案1】:

您必须重新安排已安排的通知。但请确保删除您之前安排的那些。

NSArray *notifications = [[UIApplication sharedApplication] scheduledLocalNotifications];
[[UIApplication sharedApplication] cancelAllLocalNotifications];

for (UILocalNotification *notif in notifications) 
    notif.soundName = [NSString stringWithFormat:@"%@.mp3", soundName]; 
    [[UIApplication sharedApplication] scheduleLocalNotification:notification];

【讨论】:

以上是关于更改已设置 UILocalNotification 的 soundName的主要内容,如果未能解决你的问题,请参考以下文章

iOS UILocalNotification 已安排,但未触发

在应用程序终止后使用 NSNotification 处理 UIViewController 中的 UILocalNotification

UILocalNotification 没有触发

UILocalNotification如何将repeatInterval设置为每两天?

自定义 UILocalNotification 的警报

如何设置 UILocalNotification 连续 30 天