Как обнаружить щелчок от NSToolbarItem внутри NSWindowController? - PullRequest
0 голосов
/ 22 декабря 2018

У меня есть панель инструментов в моем приложении MacOS, разработанном в Swift.Элемент toolbarItem можно перетаскивать на NSWindowController, и я могу настроить функцию IABAction, в данный момент у меня есть печать в этой функции.И когда я нажимаю на кнопку, ничего не происходит, щелчок, кажется, не распознается как действие?

У меня было еще несколько строк кода в функции, но я удалил ее и теперь имею только print ("test") line.

@IBAction func exportCsvClicked(_ sender: NSToolbarItem) {   
print("test") }

Нет выходных данных, поэтому я хотел бы получить" test "в консоли при нажатии на эту кнопку.

Вот список соединений, связанных с панелью инструментов Элемент.

1 Ответ

0 голосов
/ 27 декабря 2018

Я нашел способ обойти тот факт, что IBAction от NSToolbarItem не распознает щелчок по этому элементу:

1 / Я сделал customSegue от элемента к контроллеру главного окна (он можетпойти куда угодно)

2 / Функция подготовки к переходу отправляет уведомление в уведомление о том, что элемент был нажат.

3 / Контроллер основного вида наблюдает за уведомлением и представляет либо всплывающее окно, либо лист (у меня есть две кнопки), представление, которое я настроил в раскадровке (ссылаясь на storyboardID).Я обнаружил, что вам нужно передать все необходимые переменные для настройки представления из контроллера основного представления, и что была проблема с кодом в функции viewDidLoad представления листа / всплывающего окна, не работающего, я подозреваю, что они могут отличатьсяэкземпляров.

...