В настоящее время я использую postNotification несколько раз с NSTimer, но наблюдатель получает его только один раз.Как опубликовать несколько NSNotification?
Каким образом можно получать одно и то же уведомление несколько раз без добавления нескольких наблюдателей?
Мой таймер создается следующим образом:
timer = NSTimer.scheduledTimerWithTimeInterval(2.0, target: self, selector: #selector(update) , userInfo: nil, repeats: true)
А внутри метода обновления является:
let testNotification: NSNotification = NSNotification(name: "testNotification", object: self, userInfo: nil)
NSNotificationCenter.defaultCenter().postNotification(testNotification)
Это, как я зарегистрировать наблюдателя в одном из viewcontrollers:
override func viewDidLoad() {
super.viewDidLoad()
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(testNot), name: "testNotification", object: nil)
updateView()
}
Я добавляю наблюдателей в viewcontroller, как обычно.
Я могу подтвердить, что таймер работает, потому что update() вызывается на регулярном интервале, и наблюдатель действительно получает уведомление в первый раз, но он не повторяется.
Пожалуйста, дайте мне знать, если вам нужно больше узнать о коде.
Вам необходимо показать нам код, который создает таймер и код, который отправляет уведомление. –
И код, который регистрируется для уведомления. –
Где вы поместили метод, чтобы отключить ваш контроллер? Может быть, внутри viewDidDisappear или testNot – Andrea