Я хочу, чтобы элементы NSToolbar моего приложения Mac вызывали действия объекта первого ответчика. У меня есть приложение со следующим макетом раскадровки:
Как видите, на панели инструментов окна есть кнопка (Test Action). Он связан с функцией действия объекта первого ответчика. Сама функция реализована в первом контроллере представления TabView.
class ViewController: NSViewController {
@IBAction func testAction(_ sender: Any) {
print("testAction")
}
}
Однако действие никогда не срабатывает. Если я помещу то же самое действие в TabViewController, оно сработает.
Если я установлю свойство nextRespodner
TabViewController для ViewController, это не поможет:
class TabViewController: NSTabViewController {
override func viewDidLoad() {
super.viewDidLoad()
nextResponder = children.first // Does not help
}
}
Почему-то цепочка респондентов работает не так, как я ожидал. У кого-нибудь есть решение? Вот пример проекта для проблемы: https://github.com/Iomegan/ResponderChainStoryboard