【发布时间】:2016-10-13 00:08:02
【问题描述】:
我有一个带有按钮的视图控制器。当按下按钮时,它会添加一个观察者,如下所示:
func buttonPress(sender:UIButton){
NSNotificationCenter.defaultCenter().addObserverForName("buttonPressEvent", object:nil, queue:nil, usingBlock:{(notif) -> Void in
// code
})
}
当我关闭这个视图控制器,然后返回它并按下按钮时,//code 会执行两次。如果我离开并再次回来,//code 会被执行 3 次,以此类推。
我想要做的是在再次添加之前删除观察者,所以这段代码不会执行两次。 Ive gone through the documentation here 并且我在添加观察者的上方添加了这行代码:
NSNotificationCenter.defaultCenter().removeObserver(self, name:"buttonPressEvent", object:nil)
但这不起作用。
谁能告诉我哪里出错了?
【问题讨论】:
标签: swift nsnotificationcenter