2011-08-11 7 views
1

질문을 더 명확하게하겠습니다.UITabBar 및 UINavigationController

각 탭에 포함 된 탐색 컨트롤러가있는 탭 막대 응용 프로그램이 있습니다.

탭 2를 클릭하면 로그인 화면으로 이동합니다. 로그인 화면에서 로그인 버튼을 사용하여 다음 화면 (예 : 화면 2)으로 이동합니다. 내가 2 번 화면에있을 때 2 번 탭을 누르면 다시 로그인 화면으로 간다. 나는 이것을 원하지 않는다. 탭 2를 다시 클릭해도 응용 프로그램이 같은 화면에 남아 있기를 원합니다.

그 사이에 다른 탭이 있으면 예상대로 작동합니다.

어떻게 이것을 수행 할 수 있습니까 ??

+1

[작업 비활성화 - 탭 표시 줄 항목의 사용자 탭을 사용하여 루트보기 컨트롤러로 이동] (http://stackoverflow.com/questions/4191504/disable-action-user-taps-on-tabbar-item-to) -go-to-root-view-controller) – lxt

답변

1
- (BOOL)tabBarController:(UITabBarController *)tabBarController 
    shouldSelectViewController:(UIViewController *)viewController { 

    if ([tabBarController.selectedViewController isEqual:viewController]) 
     return NO; 
    } 
    return YES; 
} 

또는, 탭 표시 줄에 탭을 잡아와 selectedIndex 변경 아닌지 확인할 수 있습니다.

관련 문제