NSUserNotification - Mavericks & Пользовательские изображения
В 10.9 NSUserNotification поддерживает новое свойство "contentImage", которое позволяет использовать графику в самом уведомлении. Я действительно надеялся, что может быть способ узурпировать экран уведомлений через уведомления iTunes, поэтому он будет выглядеть так, как будто значок приложения отправителя / пакета настроен.
Но похоже, что свойство учитывает только часть того, что я ищу, а свойство contentImage обрабатывает изображения только таким образом:
Есть идеи об обходном пути?
1 ответ
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];
}