나는 탭 막대 응용 프로그램을 가지고 있고 2 개의 탭은 동일한 클래스 (다른 인스턴스)를 사용하여 UITableView를 표시합니다. 어느 탭을 클릭하면 몇 가지 사소한 변경 사항이 외관, 기능 등을 이루어집니다. 내가 가진 문제는 UITableView에서 모달보기를 보여 주며 그것이 기각 될 때 NSNotification을 게시하여 UITableView를 다시로드합니다 (UITableView의 뷰 컨트롤러),하지만 2 개의 NSNotifications를 게시 할 때 앱에 동일한 클래스의 인스턴스가 2 개 있기 때문에 게시했습니다. 알림이 호출 된 인스턴스에만 게시되도록하려면 어떻게합니까? 당신이 NSNotification
에 대한 처리기를 설정할 때NSNotification ... 올바른 방법으로?
답변
당신은 누구의 통지에 관심이에 대한 object
을 지정할 수 있습니다.
을 경우에만 특정에서 게시 된 통지에 관심이있을 수에 첫 번째 테이블 뷰 컨트롤러를 설정해야합니다
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(handler:)
name:notificationName
object:instanceOfModalViewController];
이 방법 알림은 다음과 같습니다 만에 모달 뷰 컨트롤러, 그리고 두 번째 테이블 뷰 컨트롤러의 인스턴스는 모달 뷰 컨트롤러의 의 특정 인스턴스에서 게시 된 통지에 관심이있을 모달보기 컨트롤러에서 게시 한 경우 관심을 지정한 테이블보기 컨트롤러 만 알림을 처리합니다.
아, 그 말이 맞습니다. 모달보기를 표시하는 버튼을 누를 때 알림을 복제하지 않도록 다른 장소에서 dealloc에 대한 알림을 제거해야합니다 (알림을 지금 작성하는 곳입니다). – Darthtong
'NSNotificationCenter'에 모달 뷰 컨트롤러를 표시하는 것처럼 듣기를 시작한다고 알려야합니다. 그런 다음 통지를 처리 한 직후에 ([[NSNotificationCenter defaultCenter] removeObserver : self name : notificationName 객체 : instanceOfModalViewController];)를 호출하여 청취를 중단해야합니다. – Jasarien
알림이 항상 호출되지는 않기 때문에 다른 방법으로 제거해야 할 것입니다. 모달 뷰가 닫히기 때문에 도움을 주셔서 감사합니다! – Darthtong
- 1. 올바른 방법으로 메모리를 확보하십시오.
- 2. NSNotification 완전히
- 3. 올바른 방법으로 MFMailComposeViewController를 닫을 수 있습니다.
- 4. 올바른 방법으로 Java에서 ArrayList 동기화
- 5. 올바른 방법으로 NSArray/NSMutableArray 채우기
- 6. 올바른 방법으로 Windows 네트워크 인증
- 7. 올바른 방법으로 CPU 아키텍처를 감지합니까?
- 8. 올바른 방법으로 데이터베이스에 이미지를 업로드하십시오.
- 9. 올바른 방법으로 WCF 서비스 계층화하기
- 10. 올바른 방법으로 JSON 객체 만들기
- 11. 올바른 방법으로 MySQL 테이블을 설정하십시오.
- 12. 올바른 방법으로 TinyMCE 플러그인 표시
- 13. 올바른 방법으로 대화 상자를 닫으십시오.
- 14. NSNotification 문제
- 15. 올바른 방법으로 트위스트 반응기를 초기화하는 방법은 무엇입니까?
- 16. 디스플레이 목록이 올바른 방법으로 작동하지 않습니다
- 17. 올바른 방법으로 요소를 늘릴 수 있습니까?
- 18. 올바른 방법으로 라디오 버튼을 할 수 있습니까?
- 19. Tomcat : 올바른 방법으로 리소스를 찾을 수 있습니까?
- 20. 올바른 방법으로 xib 파일을 수동으로 추가하는 방법
- 21. 올바른 방법으로 PHP의 PDO 드라이버를로드 하시겠습니까?
- 22. 형제 뷰 간 NSNotification
- 23. OCUnit 테스트 NSNotification 전달
- 24. NSNotification 경쟁 조건
- 25. NSNotification 대 Delegate Protocols?
- 26. NSNotification 객체의 캐스트 값
- 27. NSNotification 사용 방법
- 28. NSNotification removeObserver 문제
- 29. NSNotification addObserver : someOtherClass
- 30. NSNotification, 콜백을 수신하지 않음
'내 앱에 동일한 통화의 인스턴스가 2 개 있습니다.'라는게 무슨 의미입니까? 조금 더 구체적 일 수 있습니까? – FreeAsInBeer
죄송합니다. '수업'이 '전화하지 않습니다' – Darthtong