2013-04-16 4 views
0

uitabbarController를 가지고 있는데, 탭이 4 개 있습니다. 각 탭에는 자체 탐색 기반 스택 추적이 있습니다. 각 화면의 로그 아웃 버튼 내 TabbarController 위에 로그인 화면을 표시합니다.UITabbarController에서 NavigationController의 스택 추적

하지만 내가 다시 로그인하면 내 Tabbar 오래된 스택이 남아 있습니다.

언제든지 화면에서 로그 아웃 버튼을 누릅니다. 모든 탭의 모든보기 컨트롤러를 루트보기 컨트롤러에 표시합니다.

아무에게도이를 달성하는 방법을 안내 할 수 있습니까?

감사합니다.

답변

0

아틀라스 저는 그것을 풀었습니다.

다음 기준을 만들고 필요한 항목을 얻었습니다. 다음 코드를 사용하여 모든 탭 막대를 각각의 루트보기 컨트롤러에 한 번에 나타낼 수 있습니다.

NSArray *temp = self.tabBarController.viewControllers; 
NSLog(@"count of Temp = %d",[temp count]); 
NSLog(@"Temp Array = %@",temp); 
if ([temp count]>=1) { 
    for (int i=0; i<[temp count]; i++) { 
     UINavigationController *controller = [self.tabBarController.viewControllers objectAtIndex:i]; 
     NSLog(@"controllers @ index %d = %@",i,[controller class]); 
     [controller popToRootViewControllerAnimated:YES]; 
    } 
} 

감사
안부
샤 ...