1

나는 여러 탭 막대 항목이있는 UITabBarController이 있습니다. 첫 번째 탭 표시 줄 항목은 A이라는보기가 있으며 Click 단추가 있습니다. 해당 버튼을 클릭하면보기가 다른보기로 이동합니다. (이 탭에는 UINavigationController이 있으므로보기에는 뒤로 버튼이 표시됩니다).UITabBarItem에 포커스 설정

이제이보기에는 단추가있을 것입니다.이 단추를 클릭하면 두 번째 TabItem으로 이동해야합니다. 합니다 (UITabBarItem 의미하는) 내비게이션 제어기로 (포커스를 설정되어야하고, 뒤로 버튼이 없어야)

참고 :

사용자가 버튼을 클릭

, 난 탐색 다음 코드를 사용 다른 UITabBarItem의 다른보기로 이동합니다. 그런 다음 두 번째 탭 표시 줄 항목에 포커스가 설정되지 않고 탐색 컨트롤러의 뒤로 단추가 표시됩니다.

SelectSiteViewController *siteViewController = 
[[SelectSiteViewController alloc] initWithNibName:@"SelectSiteViewController" 
              bundle:nil]; 
[self.navigationController pushViewController:siteViewController 
            animated:YES]; 

희망 사항은 명확한 질문입니다. 어떻게 코딩 할 수 있습니까?

+1

네비게이션 스택에 뷰 컨트롤러 **를 올려 놓고 있습니다 ... 뒤로 버튼은 사용자가 돌아올 수 있도록하기위한 것입니다. 그러나 활성 탭 표시 줄 항목을 변경하지 않으므로 포커스가 없으며 두 번째보기 컨트롤러도없고 뒤로 버튼도 없습니다. UITabBarController의 [selectedViewController] (http://developer.apple.com/library/ios/#documentation/uikit/reference/UITabBarController_Class/Reference/Reference.html) 속성을 변경하려고합니다. –

+0

나는 이것을 인터넷 검색으로 발견했다. 이 올바른지'self.tabBarController.selectedViewController = [self.tabBarController.viewControllers objectAtIndex : 2]; ' – Illep

+0

'2 '가 원하는 것의 색인이면 ...해야합니까? 테스트 했습니까? –

답변

3

이해 하시겠지만 탐색 작업에서 현재보기 컨트롤러를 제거하고 탭 표시 줄 컨트롤러에서 두 번째 탭을 선택하려고합니다.

UINavigationController *navigationController = self.navigationController; 
[navigationController popToRootViewControllerAnimated:NO]; 
[navigationController.tabBarController setSelectedIndex:1]; 
1
[myTabBarController setSelectedIndex:1]; 
+0

이것은 오직 tabbaritem에 포커스를 설정할 것입니다, 네비게이션 바의 Back 버튼을 어떻게해야합니까? – Illep

+0

[self.navigationItem setBackBarButtonItem : nil]; –