Я пытаюсь вызвать функцию из другого класса в Swift, и NotificationCenter
- это вариант для этого, поэтому я начал с addObserver
.
override func viewDidLoad() {
super.viewDidLoad()
NotificationCenter.default.addObserver(self, selector: #selector(toggleSideMenu), name: NSNotification.Name("callToggleSideMenu"), object: nil)
}
@objc func toggleSideMenu(){
if isMenuOpen {
sideContainer.constant = -260
} else {
sideContainer.constant = 0
}
}
А в другом классе у меня естьдобавил (пост):
@objc func clickOnButton(button: UIButton) {
NotificationCenter.default.post(name: NSNotification.Name("callToggleSideMenu"), object: nil)
}
Все вроде нормально, но я не знаю, почему это не работает.Я видел много такой же проблемы здесь в stackoverflow, но ни один ответ не решил мою проблему.