Название кнопки NSStatusItem справа от изображения
Я хочу NSStatusItem
Название кнопки отображается справа от ее изображения. Вот пример, это приложение OS X VPN menubar:
Если я установлю название или изображение для моего NSStatusItem
Кнопка, они делают правильно. Однако, если я установлю оба, они накладываются и выровнены по горизонтали.
Есть ли способ добиться параллельного размещения без создания пользовательских UIView
?
2 ответа
Это связано с изменением в Йосемити, которое устарело setTitle:
а также setImage:
на NSStatusItem
, Однако документация не очень полезна для того, что делать.
Я обнаружил, что вы должны установить заголовок и изображение на button
собственность NSStatusItem
, Вот как я получал поведение, описанное выше, с заголовком и изображением в центре друг друга.
Решение простое, но не сразу очевидное. NSStatusBarItem отвечает на setImagePosition:
метод NSButton
, Вот код, который исправил мою проблему:
self.statusItem.button.image = [NSImage imageNamed:@"StatusBarIcon"];
self.statusItem.button.imagePosition = NSImageLeft;
Сделав это, настройка self.statusItem.button.title
правильно позиционирует предметы.
Использование
button.imagePosition = NSControl.ImagePosition.imageLeft
На основе http://tinkker.io/swift/2015/11/10/nsstatusitem.html, в Swift это выглядит так button.imagePosition = NSCellImagePosition.ImageLeft
Является ли