gpt4 book ai didi

objective-c - 如何在运行时找到 NSUserNotification 的样式?或者强行关闭警报?

转载 作者:行者123 更新时间:2023-12-03 16:22:20 24 4
gpt4 key购买 nike

根据OS X Mountain Lion Release Notes :

"The user has ultimate control over what notifications are displayed, and the style (banner, alert, etc). There is no mechanism to override the user preferences."

尽管我想做的只是从警报样式“降级”为横幅样式......很好。 但是我至少可以在 didActivateNotification 方法中找出通知是警报还是横幅样式吗?

当警报是横幅(这就是我想要的)时,单击其内容是唯一可能的操作,这都会触发 didActivateNotification 方法,其 notification.activationType 值为 NSUserNotificationActivationTypeContentsClicked 并关闭通知横幅。我希望我的应用程序通过打开互联网 URL 来响应此操作。

当用户选择提醒样式的通知时,点击提醒内容也会生成与 notification.activationType 相同的 didActivateNotification,但它会留在屏幕上而不是消失(只有在按下“操作”按钮,然后 notification.activationType 具有不同的值)。 我不希望我的应用针对同一警报通知重复触发操作,以防用户单击警报通知的内容区域。

另一种解决方案是在用户单击其内容时强制消除警报通知气泡。这可能吗?

最佳答案

您可以通过以下方式删除通知:

[[NSUserNotificationCenter defaultUserNotificationCenter] removeDeliveredNotification:notification];

关于objective-c - 如何在运行时找到 NSUserNotification 的样式?或者强行关闭警报?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12336320/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com