2012-04-25 12 views
6

Mam kilka wyświetleń UIVIEWs, a następnie wychodzących i nieużywanych. Uważam jednak, że niektórzy z nich wciąż otrzymują powiadomienia, nawet po ich zniknięciu, co powoduje problemy.Powiadomienia ios o "martwych" obiektach

Na UIView „macierzystej” w opakowaniu:

if(self._content != nil && [self._content respondsToSelector:@selector(presentMe:)]) { 
    [self._content presentMe:NO]; 
} 

Na „dziecko” UIView:

[[NSNotificationCenter defaultCenter] <-- EXC_BAD_ACCESS (code=1, address=0x70000008 
postNotificationName:PRESENTING 
object:self 
userInfo:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:prepareToEnter], PRESENTING, nil]]; 

wszystko działa za pierwszym razem, ale jeśli uruchomić ten sam widok po raz drugi Otrzymuję EXC_BAD_ACCESS. Czy to nie oznacza, że ​​czegoś brakuje?

FYI to wszystko w ARC - Xcode 4.3.2

Odpowiedz

12

Jeśli dzwonisz addObserver dla elementów w widoku, trzeba zadzwonić removeObserver podczas dealloc. Nawet z ARC.

Powiązane problemy