재미있는 상황에 처했을 때, 나는 각각 3/의 아이폰 앱을 가지고 있습니다 (필터링 문제라고 말할 수 있습니다). 지금까지 나는 이것에 대한 3 개의 분리 된 새그들을 가지고 있었고, 각각 컨트롤러를 가지고 있었고, 게다가 UITableViewController
은 위에있는 버튼을 위해서 UINavigationController
안에 있었다.UITabBarController를 사용하는 UITableViewController가 표시되지 않습니다.
이제 애플리케이션을 최적화하고 풋 프린트를 줄이기 위해 모든 로직을 하나의 공통 컨트롤러 (UITableViewController
)에 설치하고 NIB를 하나만 남겨 둡니다. 공통 제어기는 데이터를 필터링하고 올바른 데이터를 가리 키도록 처리합니다.
그래서 저는 네비게이션 컨트롤러의 3에 같은 일반적인 컨트롤러를로드
navControllerA = [[UINavigationController alloc] initWithRootViewController: commonTableController];
과 UITabBarController
이러한 네비게이션 컨트롤러를 추가 :
navigationControllersArray = [NSArray arrayWithObjects: navControllerA, navControllerB, navControllerC, nil];
[tabController setViewControllers:[NSArray arrayWithArray:navigationControllersArray]];
이제 모든 미세한의 탭이 표시되면 테이블 뷰가 표시됩니다. 그러나 다음 UITabBarItem
을 터치하고 UITableViewController
이 표시되지 않는 이전 화면으로 돌아 가면 UIWindow
만 볼 수 있습니다. UITableViewController
은 마지막으로 접촉 한 UITabBarItem
에만 표시됩니다.
어떤 종류의 UITabBar
보기로드 메커니즘을 알고 있습니까?