更改非活动标签栏颜色IOS 7.1

时间:2014-08-28 11:35:54

标签: uitabbarcontroller uitabbar

我在互联网上搜索过,似乎找不到从标准灰色更改非活动标签颜色的答案,我可以设置活动但我希望非活动标签是不同的颜色

我在xcode 5.1.1中使用带有嵌入式标签栏控制器的故事板

enter image description here

1 个答案:

答案 0 :(得分:0)

对于iOS7,请使用:

//获取嵌入式标签栏控制器

  UITabBarController *tabBarController = (UITabBarController *)self.window.rootViewController;

//获取标签栏

  UITabBar *tabBar = tabBarController.tabBar;

//获取标签栏项目w.r.t他们的索引

 UITabBarItem *tabBarItem3 = [tabBar.items objectAtIndex:2];

//为未选择状态设置图像

[tabBarItem3 setImage:[[UIImage imageNamed:@"maps.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];

//为所选状态设置图像

 [tabBarItem3 setSelectedImage:[[UIImage imageNamed:@"maps_selected.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];

在这里,您可以为maps.png(非活动状态)和maps_selected.png(活动状态)提供所需的颜色。简而言之,您必须为图像提供所需的颜色(标签栏图标)。同样,您必须为两种状态的所有选项卡项定义图像。在didFinishLaunchingWithOptions:你的应用程序的方法中执行此操作。

对于iOS 6,它很短,不适用于iOS7及更高版本:

[tabBarItem3 setFinishedSelectedImage:[UIImage imageNamed:@"maps_selected.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"maps.png"]];

希望这对你有用!快乐的编码!