我经历了一些 SO 问题,发现了这个:
NSLog(@"selected tab index => %d",self.tabBarController.tabBar.selectedItem.tag);
但是这总是返回 0。 我做错了什么?
我在 AppDelegate 中的代码:
- (BOOL)applicationUIApplication *)application didFinishLaunchingWithOptionsNSDictionary *)launchOptions
{
// Override point for customization after application launch.
// Assign tab bar item with titles
UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;
UITabBar *tabBar = tabBarController.tabBar;
UITabBarItem *tabBarItem1 = [tabBar.items objectAtIndex:0];
UITabBarItem *tabBarItem2 = [tabBar.items objectAtIndex:1];
UITabBarItem *tabBarItem3 = [tabBar.items objectAtIndex:2];
return YES;
}
编辑:
我想做这样的事情:
if(self.tabBarController.tabBar.selectedItem.tag == 0)
{
[[UITabBar appearance] setSelectedImageTintColor:[UIColor orangeColor]];
}
else if(self.tabBarController.tabBar.selectedItem.tag == 1)
{
[[UITabBar appearance] setSelectedImageTintColor:[UIColor blueColor]];
}
您必须在 Storyboard 编辑器中或以编程方式将标签值分配给项目,使其不为零。
关于ios - 如何获取选定的 TabBar 项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23336619/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |