我使用storyboard创建了一个应用程序,并且有一个带有3个选项卡的标签栏控制器。每个选项卡都有一个选项卡图标和一个选项卡标题,我有两个样式图标(已选中和未选中)。两者都是54 * 54。
当我使用storyboard选择标签栏项目时,在其属性检查器中, 如果我将Bar项目的图像设置为已选中的图像,它将显示一些奇怪的事情:
当然,这不是我想要的。我想问题可能是我的选中图标是蓝色的。
我想知道如何获得标签的正确图标。两者尺寸和外观都合适。
另外,有人可以告诉我" Tab Bar Item"的区别。和" Bar Item"?
答案 0 :(得分:2)
用奇怪的事情解决问题'使用图片,您可以在代码中执行此操作:(抱歉,我也不知道正确的用语)
UIImage *image = [[UIImage imageNamed:@"imageName"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];
然后将此图像分配给UITabItem的图像:
UITabBarItem * tabItem = [tabBarController.tabBar.items objectAtIndex:0];
tabItem.image = image;
我不知道如何在故事板中做到这一点。
您还可以在外部(使用预览)或内部使用代码(搜索调整UIImage大小的方法)将图像调整为正确的大小。
答案 1 :(得分:2)
Sketch
作为App Icon Tool,它可以方便地将您的图标,自定义图标或下载图标导入三种尺寸(@ 1x,@ 2x和@ 3x)。我不建议您在代码中设置图标的大小。Selected Image
中将蓝色图标设置为Tab Bar Item
的突出显示图标。Bar Item
是Tab Bar Item
的一部分。如果您刚刚使用Default
图标,例如More
,favorited
,feather
,那么您无需设置Tab Bar Item
。在您选择icon
为Tab Bar Item
之后,您应在System Item
中选择自己的Custom
。答案 2 :(得分:0)
我只是遇到同样的问题!然后我弄明白了!
您的代码或设置没有任何问题
关于图片
您可以查看手机上的应用程序。(差不多)任何标签栏项目图标均为灰色。
因此Icon只会以灰色显示 UN Hollow 部分!
[另外,根据官方API,他们写道:
默认情况下,会根据源图像中的 Alpha值自动创建未选择和选定的图像。要防止系统着色,请使用 UIImageRenderingModeAlwaysOriginal 提供图像。
因此,解决方案是:使用草图使您的实例图标的心脏部分为空心