Простое приложение какао с иконкой MenuBar.Как:? - PullRequest
15 голосов
/ 21 января 2011

Я пытаюсь сделать приложение Какао довольно простым.У меня три окна с тремя сообщениями, вот и все.Я пытаюсь сделать следующее:

Пользователь запускает приложение, значок приложения появляется в строке меню, и это все, что происходит, без меню и без значка док-станции

Затем,пользователь может щелкнуть значок MenuBar и получить раскрывающийся список и выбрать одно из трех доступных сообщений.

Я знаю, что это бесполезно, но это буквально мое первое приложение, и я не могу понять, как заставить NSStatusItemработать правильно ...

Я посмотрел вокруг и нашел несколько учебных пособий, но я не могу следовать ни одному из них ... любая помощь?

1 Ответ

19 голосов
/ 21 января 2011
  1. Относительно «иконки без док-станции» - добавьте логическую LSUIElement запись в файл Info.plist и установите для нее true . Приложение также не будет отображаться в интерфейсе переключателя приложений (cmd + tab).
  2. Добавление значка строки меню равнозначно просмотру документации NSStatusBar и NSStatusItem и использованию там примера кода:

.

// this one is taken from apple documentation
- (void)activateStatusMenu {
    NSStatusBar *bar = [NSStatusBar systemStatusBar];

    theItem = [bar statusItemWithLength:NSVariableStatusItemLength];
    [theItem retain];

    [theItem setTitle: NSLocalizedString(@"Tablet",@"")];
    [theItem setHighlightMode:YES];
    [theItem setMenu:theMenu];
}

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
    [self activateStatusMenu];
}

Обновление Поскольку ARC не разрешает вызовы retain в коде, мне удалось решить эту проблему, создав theItem как __strong переменную экземпляра класса, в котором создается элемент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...