从tabbarcontroller的子控制器跳转到另一个子控制器

在项目中,我们可能会遇到从tabbarcontroller的第一个子控制器item1跳转到第二个子控制器item2,该怎么跳转呢?其实很简单:

self.tabBarController.selectedIndex = n;

这里的n就是tabbarcontroller子控制的序号,从0开始.这样一句代码就可以完成跳转了.
还有一种是直接回到第一个子控制器item1的方法(既重新加载一次),但是这种方法存在局限性,也就是只能跳转到首页这个子控制器.

TabBarViewController *tabbar = [[TabBarViewController alloc]init];
UIWindow * window = [UIApplication sharedApplication].delegate.window;
            window.rootViewController = tabbar;
            [window makeKeyWindow];

但是假如要求是从item3下的某个控制器跳转到item1上的根控制器,又该怎么跳转呢?
首先,先回到本item3的根控制器,不显示动画

[self.navigationController popToRootViewControllerAnimated:NO];

然后强制切换tabBarController的选中的item为item1就可以了

self.tabBarController.selectedIndex = 0;

总结:其实就是先pop,再改变tabbar的selectedIndex就可以啦~~~

你可能感兴趣的:(从tabbarcontroller的子控制器跳转到另一个子控制器)