Get the Identifier of the current tab - iphone
-
25-06-2021 - |
Question
Probably a simple question, but I'm having a hellofa time finding a solution to it.
I need to find the identifier of the current tab in a tabbarcontroller and use it in a conditional to run a method.
how do I find this?
if (self.tabbarcontroller.identifier == @"My identifier") {
// do some method
} else {
// do the default method
}
Solution
UIWindow *window = [[UIApplication sharedApplication] keyWindow];
UITabBarController *tabBarController = (UITabBarController*) window.rootViewController;
UIViewController *selectedVC = tabBarController.selectedViewController;
if ([selectedVC.identifier isEqualToString:@"anIdentifier"])
{
// Do something
} else {
// Do something else
}
You can set the identifier of a ViewController in your storyboard
OTHER TIPS
Check out the following code. Also make sure that the delegate for the UITabBar is correct pointing to the view controller, in this case FirstViewController.
**FirstViewController.h****
@interface FirstViewController : UIViewController<UITabBarDelegate>
**FirstViewController.m:**
- (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item
{
NSLog(@"%@",[item tag]);
}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow