我已經創造了A類的通知像如何在另一個類中去除noitification觀察者?
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(methodcalled:) name:@"ViewChanged" object:nil];
我張貼此通知與名B類像
[[NSNotificationCenter defaultCenter]postNotificationName:@"ViewChanged" object:nil];
現在我想在講座除去像下面這個通知C。可能嗎?因爲我需要從class-c去甲班。
[[NSNotificationCenter defaultCenter] removeObserver:self name:@"ViewChanged" object:nil];
[[NSNotificationCenter defaultCenter] removeObserver:nil name:@"ViewChanged" object:nil];
[[NSNotificationCenter defaultCenter] removeObserver:self];
我試過了,但通知沒有刪除,它的調用兩次。 如何爲NSNotificationCenter
創建對象?
C爲什麼要管理A的觀察?爲什麼不是A爲自己做呢? – Wain
您需要對該對象(類A的實例)的引用才能使用removeObserver:instanceOfObjectOfClass-A。 – user523234
@是的,在從C到A之前,我想刪除A的觀察者,否則將會是另一個觀察者。現在,當我從C到A時,該方法正在調用兩次。 –