2011-08-09 2 views
0

이상한 문제가 있습니다.신고 된 것보다 자주 알림이 전송됩니다.

[[NSNotificationCenter defaultCenter] postNotificationName:@"NIDNewDataSetNotification" object:self]; 

내가 바로 알림을 보내기 전에 시간을 NSLog 경우에, 나는 그것을 정상적으로 초마다 전송하는 참조 :

이 같은 알림 센터로 전화하여 알림을 보내는 방법을 .

I 좋아해서 관찰자 그 자체를 추가하는 또 다른 목적에있어서 가지고 시간 NSLogging하여

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(receiveDataNotification:) name:@"NIDNewDataSetNotification" object:nil]; 

단을, I는 같은 통지를 (매초 내의 모든 네 네 번 수신 참조 0.001 초).

전송되는 다른 알림이 없습니다. 통지를 보내는 행을 주석 처리하면 통지를 수신하는 메소드가 호출되지 않습니다.

아이디어가 있으십니까?

1) 당신은 어떻게 든 통지를 여러 번 등록 할 :이 발생할 수 이가지 경우의

+0

알림을 여러 번 등록하지 않으려면 어떻게해야합니까? –

답변

6

생각 할 수 있습니까? 등록하기 바로 전에 NSLog(@"registering...") 성명을 던지십시오. 한번만 볼 수 있습니다.

2) 이벤트 등록을 취소 하시겠습니까? 그것은 부러 지거나 불리지 않을 수 있습니까? NSLog 문을 호출하여 호출되는지 확인하고 올바른 위임자 인 & 알림을 제거해야합니다.

+0

내 프로젝트를 청소했는데 어쨌든 고맙습니다. – Randall

+1

@Randall : 다음 번에 질문을 올리십시오. –

0

네, 옵서버를 설정할 때마다 다시 등록하고, 내려 놓을 때 등록 취소하지 않는 것이 좋습니다.

관련 문제