获取选项卡栏控制器中的选项卡栏项的导航控制器堆栈



我想获取UIViewControllers的列表,即UINavigationController堆栈在UITabBarController中选项卡栏项目的特定索引处。 请详细说明..! 请大家携手共进

这样做:

NSArray *arrControllers = self.tabBarController.viewControllers;
for(UIViewController *viewController in arrControllers)
{
if([viewController isKIndOfClass:[UINavigationController class]])
{
//NavigationController
UINavigationController *navCtrl = (UINavigationController *)viewController;
NSLog(@"%@",navCtrl.viewControllers);
}
else
{
// view controller
}
}

如果要在更改选项卡时检查这一点,请实现 UITabBarControllerDelegate 的回调:

-(void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController{
//if you're using navigationController
UINavigationController *navC=(UINavigationController *)viewController;
NSArray *arrayVc=navC.viewControllers;
NSLog(@"%@",arrayVc);
}

最新更新