我有一個按鈕的視圖控制器。當按下按鈕,它增加了一個觀察者,像這樣:NSNotificationCenter:在Swift中刪除觀察者
func buttonPress(sender:UIButton){
NSNotificationCenter.defaultCenter().addObserverForName("buttonPressEvent", object:nil, queue:nil, usingBlock:{(notif) -> Void in
// code
})
}
當我關閉此視圖控制器,然後返回到它並按//code
執行兩次的按鈕。如果我離開並再次返回,//code
會執行三次,以此類推。
我想要做的是在再次添加Observer之前刪除Observer,因此此代碼不會執行兩次。 Ive gone through the documentation here並且Ive加入這一行代碼剛好高於我添加觀察報:
NSNotificationCenter.defaultCenter().removeObserver(self, name:"buttonPressEvent", object:nil)
但是,這心不是工作。
任何人都可以告訴我哪裏出錯了嗎?
解決了我的問題 - 非常感謝! – Jimmery 2014-12-03 09:54:37