NSUserNotification - 小牛队和自定义图像

kal*_*lik 12 icons objective-c nsusernotification

在10.9中,NSUserNotification支持一个新属性"contentImage",它允许在通知本身中使用图形.我真的希望有一种方法来篡改iTunes的通知屏幕,所以看起来好像发件人/捆绑应用程序图标是自定义的.

在此输入图像描述

但似乎该属性只允许我正在寻找的子集,而contentImage属性只能处理图像:

在此输入图像描述

关于变通方法的任何想法?

Cod*_*aFi 4

NSUserNotification毫不掩饰这是一个极其封闭的系统。但是,如果您正在寻找私有 API,NSConcreteUserNotification请实现一种名为 的方法set_identityImage:。传递一个有效的 NSImage,所呈现的通知将其内容与 iTunes 横幅完全相同。

@interface NSUserNotification (CFIPrivate)
- (void)set_identityImage:(NSImage *)image;
@end

- (void)applicationDidFinishLaunching:(NSNotification *)notif {
    NSUserNotification *notification = [[NSUserNotification alloc] init];
    notification.title = @"Some Title";
    notification.subtitle = @"Some subtitle";
    [notification set_identityImage:[NSImage imageNamed:@"CF_Logo.png"]];
    [NSUserNotificationCenter.defaultUserNotificationCenter deliverNotification:notification];
}
Run Code Online (Sandbox Code Playgroud)

定制横幅