2014-02-06 2 views
0
-(void)backButtonclicked 
{ 
    ViewController *rvc = [[ViewController alloc]initWithNibName:@"ViewController" bundle:nil]; 
    [self.navigationController popToViewController:rvc animated:YES]; 

} 

выше является то, что я делаю в VC4 из tabcontroller 1как выскочить из одного UITabBarController другому

это мой сценарий:

Tabcontroller1 vc1 - VC2 - VC3 - VC4

Tabcontroller2 vc1 - VC4 (из tabcontroller 1)

теперь, когда я выскакиваю из VC4 Я хочу прийти на VC1 (из tabcontroller 2) и когда о.е. shing Я хочу перейти на vc1 из tabcontroller 2 в vc4 tabcontroller 1

, пожалуйста, помогите мне.

ответ

1

Нельзя использовать UINavigationController, чтобы изменить вкладку в UITabBarController.

Если вы хотите вкладку изменить, вы должны получить экземпляр UITabBarController и использование:

tabBarController.selectedIndex = desiredIndex; 

Вот вам пример код из моего проекта (я сделать это с некоторой анимацией):

- (IBAction)mapButtonTapped:(UIBarButtonItem *)sender { 
    UIView *startView = self.tabBarController.selectedViewController.view; 
    UIView *endView = ((UIViewController *)[self.tabBarController.viewControllers objectAtIndex:ELMapViewControllerIndex]).view; 
    [UIView transitionFromView:startView toView:endView duration:ELAnimationDuration 
         options:UIViewAnimationOptionTransitionCrossDissolve 
        completion:^(BOOL finished) { 
         if (finished) 
          self.tabBarController.selectedIndex = ELMapViewControllerIndex; 
        }]; 
    ELMainMapViewController *carparkVC = [self.tabBarController.viewControllers objectAtIndex:ELMapViewControllerIndex]; 
    MKCoordinateRegion region = [self.delegate locationCoordinateForTappedMapButton]; 
    [carparkVC moveToRegion:region]; 
} 
+0

я использую упомянутый выше u, и да, его работа, но все еще есть некоторые проблемы. – Abhishek

Смежные вопросы