标签栏项目图像不显示 - xcode 6 [关闭]

Posted

技术标签:

【中文标题】标签栏项目图像不显示 - xcode 6 [关闭]【英文标题】:Tab bar item Image doesnt show - xcode 6 [closed] 【发布时间】:2015-06-03 11:32:45 【问题描述】:

这开始让我感到沮丧,但是当我尝试将我的标签栏项目图像从那些默认的正方形或圆形图标更改为我的自定义图像时,我得到的只是图像的阴影/轮廓..它实际上并没有显示我的形象。我不认为图像大小是问题,但我正在更改属性检查器上的图像。

你们以前见过这个问题吗?

【问题讨论】:

【参考方案1】:

TabBar 图像会自动呈现为模板图像 (Apple Docs)。如果你想避免这种行为,你可以这样做:

UIImage *img = //YOUR IMAGE YOU WANT TO SET
img = [img imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

现在使用它来创建您的标签栏项目。

如果您使用资产目录,您还可以在资产目录中设置渲染模式,以便能够在情节提要中使用它(“渲染为”选项)

【讨论】:

【参考方案2】:
UITabBar *tabBar = self.tabBar;
UITabBarItem *targetTabBarItem = [[tabbar items] objectAtIndex:0];
UIImage *selectedIcon = [UIImage imageNamed:@"name-of-selected-image.png"];
[targetTabBarItem setSelectedImage:selectedIcon];

尝试上面的代码来设置选中和未选中的标签栏项目的图像。

【讨论】:

我收到一个错误:UITabBar *tabBar = self.tabBar;它说找不到tabBar【参考方案3】:

您可以在方法的 AppDelegate.m 中编写以下代码

代码:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

   [[[self.tabBarController.viewControllers objectAtIndex:0] tabBarItem]setFinishedSelectedImage:[UIImage imageNamed:@"firstIconActive.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"firstIconInactive.png"]];

   [[[self.tabBarController.viewControllers objectAtIndex:1] tabBarItem]setFinishedSelectedImage:[UIImage imageNamed:@"secondIconActive.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"secondIconInactive.png"]]; 

【讨论】:

以上是关于标签栏项目图像不显示 - xcode 6 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

标签栏自定义按钮图像不显示

swift和xcode 6中的自定义标签栏

标签栏图像显示在 Xcode 中,但不在应用程序中

使用 swift Xcode 6 的默认选项卡栏项目颜色

使用 swift Xcode 6 的默认选项卡栏项目颜色

需要在“更多”按钮所在的标签栏项目中添加图像