Предполагая, что метод вызывается (если вам не нужно устанавливать делегат UITabBarController), вы, вероятно, получаете UINavigationController (который является подклассом UIViewController) как viewController, вы можете проверить, зарегистрировав его:
-(void)tabBarController:(UITabBarController *) tabBarController didSelectViewController : (UIViewController *)viewController
{
NSLog(@"didSelect %@", viewController);
[viewController.navigationController popToRootViewControllerAnimated:NO];
}
если это так, viewController.navigationController, вероятно, будет равен нулю, вы должны сделать:
-(void)tabBarController:(UITabBarController *) tabBarController didSelectViewController : (UIViewController *)viewController
{
if ([viewController isKindOfClass:[UINavigationController class]])
[(UINavigationController*)viewController popToRootViewControllerAnimated:NO];
}