ios - 如何获取选中的TabBar项目?

标签 ios

我已经解决了一些问题并发现了这个:

NSLog(@"selected tab index => %d",self.tabBarController.tabBar.selectedItem.tag);

但是这始终返回 0。 我做错了什么?

我在 AppDelegate 中的代码:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)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/

相关文章:

ios - 如何在 Xcode 9 上构建 Swift 3 项目?

ios - 单元测试找不到 info.plist

ios - 如何以编程方式在 iOS 中重启 iPhone 应用程序

ios - 如何向 MKPointAnnotation 添加按钮?

javascript - Meteor Cordova iOS 视频元素未加载捕获的视频

iphone - info.plist 上的设置是什么以阻止应用程序在 iPod-touch 上运行?

javascript - 从当前 UIWebview 读取 html

ios - 替代已弃用的 AudioSessionGetProperty,适用于 iOS 7

ios - 如何创建带有 DPI 集的 UIImage?

ios - Viewcontroller 无法识别我的变量?