Использование селектора в обозревателе Swift 3 NotificationCenter

NotificationCenter.default.addObserver(self, selector: Selector(("uploaded")), name: NSNotification.Name(rawValue: "uploaded"), object: nil)

Я писал имя: "uploaded:", и xcode исправил его в приведенном выше коде. Проблема в том, что при запуске приложения я получаю нераспознанный селектор.

Любой знает, как это исправить, чтобы работать с swift 3

2 ответа

Решение
NotificationCenter.default.addObserver(self, selector: #selector(ViewController.update), name: NSNotification.Name(rawValue: "uploaded"), object: nil)

func update() {
      // do what you want
   }

обратите внимание, что "ViewController" - это имя класса, в котором находится ваша функция

Используйте (проверка идентификатора) #selector синтаксис:

Без параметра:

#selector(uploaded)

С параметром:

#selector(uploaded(_:))
Другие вопросы по тегам