2010-04-30 5 views
0

UITableViewController-A에서 UITableViewController-B로 알림을 보내려고합니다.UITableViewController의 NotificationCenter에 옵저버를 추가 할 위치

알림을 수신하기 위해 으로 가정 된 UITableViewController의 initwithCoder에서 관찰자를 추가하고있었습니다. folows로

클래스는 상관

RootViewController
===있는 navigationController-A
=====있는 UITableViewController-A
===있는 navigationController-B
===== UITableViewController- B

뷰가 실제로로드되기 전에 옵저버를 추가해야 뷰가 호출되기 전에 알림이 전송 될 수 있습니다.

그러나 UIViewController의 initWithCoder 메서드에서 초기화하는 것이 바람직하지 않으며 AppDelegate에 관찰자를 추가해야한다고 들었습니다.

다른 추천 방법이 있습니까?

답변

1

'viewDidLoad'에 알림 배선을 구현 한 다음 두보기 컨트롤러를 강제로로드합니다. 보기가로드되도록하려면 'UITableViewController-A.view'를 가져옵니다. 뷰가 초기화되지 않았고 펜촉에서 뷰를로드 한 다음 'viewDidLoad'를 실행합니다.

+0

감사합니다. AppDelegate에 UITableViewController-A의 포인터를 추가하고 InterfaceViwer에 연결 한 다음 didFinishLaunchingWithOptions (applicationDidFinishLaunching?)의 [UITableViewController-A view]를 App Delegate에서 수행했습니다. – Saifis

관련 문제