Отказ от ответственности: Я действительно новичок в ObjectiveC, поэтому я, возможно, сделал фундаментальные ошибки в структуре моего приложения, поэтому, пожалуйста, дайте мне знать, есть ли лучший способ достичь моей цели.Как получать уведомления за пределами NSView?
Я пытаюсь создать приложение, которое находится в строке состояния, например Dropbox. Он должен получать уведомления. У меня есть уведомления, работающие прямо сейчас, но я реализовал их в NSView
, который находится в окне приложения. Я хочу удалить окно, чтобы иметь возможность не использовать оконное приложение (a la Dropbox). Если я удалю окно, оно удалит созданное мной представление, а затем удалит возможность моего приложения получать уведомления.
Только в случае, если я объясняю это плохо, уведомления я получаю поступают так:
#import "test.h"
@implementation test
- (id) initWithFrame:(NSRect)frameRect
{
self = [super initWithFrame:frameRect];
...
[[[NSWorkspace sharedWorkspace] notificationCenter] addObserver:self selector:@selector(windowChangeNotification:) name:NSWorkspaceDidActivateApplicationNotification object:nil];
return self;
}
- (void)windowChangeNotification:(NSNotification *)note
{
...
}
И тест является NSView:
@interface appTracker : NSView {
appTrackerDB * eventDB;
}
Как я могу получать уведомления без окна? Или есть способ получать уведомления без представления?
Дополнительная информация: Я реализую компонент пользовательского интерфейса строки состояния как NSMenu, аналогично учебнику this.
Я уверен, что есть, но я потерялся в литературе.
Спасибо за помощь!
Хорошо я не понял сначала, но после того, как я играл с несколькими вещами, я понял это. Ты подтолкнул меня в правильном направлении. Благодаря! – user1267383