2012-11-01 4 views
1

저는 꽤 오랜 시간 동안이 문제에 시달렸습니다. 여기서는 직접적으로 관련이있는 것을 찾을 수 없습니다. 내 목표은 로그인 화면에서 첫 번째보기로 핵심 데이터 객체를 전달하는 것입니다. 내 첫 번째보기는 탐색 컨트롤러에 연결되고 탐색 컨트롤러는 탭 막대 컨트롤러의 첫 번째 탭입니다.TabBarController에서 내비게이션 컨트롤러 매개 변수 설정

prepareForSegue를 통해 개체를 Tab Bar Controller에 전달할 수 있지만 상황이 혼란 스러울 때 탭 모음 컨트롤러에 저장된 개체를 탐색 컨트롤러로 전달하는 방법은 무엇입니까?

도움이 될 것입니다.

screenshot

답변

2

TabBarViewController의 배열을 보유하고 ViewController 내부 NavigationController 때문에 당신은 prepareForSegue

UITabBarController *tabBarCtr = segue.destinationViewController; 
UINavigationController *navigationController = [[tabBarCtr viewControllers] objectAtIndex:0]; 
YourViewControllerClass *viewControl = [[navigationController viewControllers] objectAtIndex:0]; 
viewControl.myObject = self.myObject 
+0

인크 레 더블. 그냥 믿을 수 없어. 방금 테스트 해 보았지만 효과가 있습니다. 게다가 지금은 훨씬 더 의미가 있습니다. 고맙습니다!! –

+0

도와 주셔서 감사합니다. :) – usergio2

0

에서 NavigationController 내부의 ViewController에 원하는 개체를 전달하기 위해이 코드를 사용할 수 있습니다 이것도 작동합니다 :

UITabBarController *tabBarCtr = segue.destinationViewController; 
SearchItemTypeViewController *viewControl = [[tabBarCtr viewControllers] objectAtIndex:0];