델리게이트를 유지하지 않고 두 클래스간에 델리게이트 콜백 패턴을 구현했습니다. 그러나 어떤 경우에는 대리자가 할당 취소됩니다. dealloced 대리자에 대한 콜백을 처리 할 때?
는 (내 경우에는 내가의 ViewController 대리자 개체입니다, 그리고 있다는 점이다 사용자 다시 눌러 버튼의 ViewController가있는 navigationController 스택에서 POP를하는 경우)그런 다음 콜백 방법은 BAD_EXE 얻을 :
if (self.delegate != nil && [self.delegate respondsToSelector:selector]) {
[self.delegate performSelector:selector withObject:self withObject:returnObject];
}
델리게이트 콜백 패턴이 많은 애플리케이션에서 구현된다는 것을 알고 있습니다. 이것에 대한 당신의 해결책은 무엇입니까?
누군가는 할당 해제 된 객체 인스턴스를 테스트 할 수 없다고 말했습니다. http://stackoverflow.com/questions/983333/objective-c-test-for-object-instance-being-dealloced-freed – KONG