2012-08-07 32 views
2

我想利用Mac OS 10.8 Mountain Lion中的NSUserNotification来向我的应用程序的用户显示一个很好的通知,但我不希望将此特定通知存储在ML右上角的通知中心桌面。我知道用户可以进入系统偏好设置并更改我的应用程序的通知行为,以便不在Notification Center中显示它,但是有没有一种方法可以在默认情况下设置该通知,或者从通知中心清除所有通知?我是否可以将我的应用的默认行为设置为不在通知中心显示通知?

我通知的代码如下所示:

NSUserNotificationCenter *nc = [NSUserNotificationCenter defaultUserNotificationCenter]; 
    [email protected]"text"; 
    notification.subtitle=["; 
    [nc deliverNotification:notification]; 

谢谢!

+1

看来我可以叫[NC removeAllDeliveredNotifications]其中nc是我的NSUserNotificationCenter。这是做到这一点的最佳方式吗?还是有办法不将通知放入通知中心? – Jackson 2012-08-07 06:25:47

+1

我不认为有任何其他(苹果认可的)方式比首先发送通知然后在几秒钟后将其删除。 – Tim 2012-08-15 13:15:34

回答

0

如果您正在寻找自己的应用程序来实现相当于进入NotificationCenter并将警报样式设置为“无”的应用程序,那么应该有一个info.plist设置来执行此操作。这就是所谓的 NSUserNotificationAlertStyle

的文档不是很清楚,但我相信有效值为:none,条幅,并提醒

http://developer.apple.com/library/ios/#documentation/general/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html#//apple_ref/doc/uid/TP40009251-SW1

相关问题