【问题标题】:How to show the tab bar item's icon correctly如何正确显示标签栏项目图标
【发布时间】:2015-06-26 20:55:12
【问题描述】:

我使用情节提要创建了一个应用程序,并且有一个带有 3 个选项卡的选项卡栏控制器。每个选项卡都有一个选项卡图标和一个选项卡标题,我有两个用于选项卡图标的样式图像(选中和未选中)。两者都是 54*54。

当我使用情节提要选择标签栏项目时,在其属性检查器中, 如果我将 Bar 项目的 Image 设置为选中的,它会显示一些奇怪的东西,如下所示:

这当然不是我想要的。我想问题可能是我选中的图标是蓝色的。

我想知道如何获得正确的标签图标。尺寸和外观都合适。

另外,谁能告诉我“Tab Bar Item”和“Bar Item”有什么区别?

【问题讨论】:

  • 在预览中调整图像大小并将其重新添加到项目中?如果我没记错的话,@1x 应该是 30x30。
  • 尺寸问题已修复。谢谢

标签: ios uitableview storyboard uinavigationbar uitabbar


【解决方案1】:

要解决图像“奇怪”的问题,您可以在代码中执行此操作:(对不起,我也不知道正确的词)

UIImage *image = [[UIImage imageNamed:@"imageName"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];

然后将此图像分配给UITabItem的图像:

UITabBarItem * tabItem = [tabBarController.tabBar.items objectAtIndex:0];
tabItem.image = image;

我不完全知道如何在情节提要中做到这一点。

您还可以使用代码(搜索调整 UIImage 大小的方法)在外部(使用预览)或内部将图像大小调整为正确的大小。

【讨论】:

  • 我找到了解决这个问题的方法:只需使用未选中的并在 Images.xcassets 中将其设为“2x”。我想问题可能是选中的那个是蓝色的。
【解决方案2】:
  • 尺寸问题:我推荐你使用Sketch作为你的应用程序图标工具,它能够方便地将你的图标,自定义一个或下载一个,导入三个尺寸(@1x,@2x和@3x)。而且我不建议您在代码中设置图标的大小。
  • 高亮问题:您展示了图标有不同的灯光类型,您可以在面板Tab Bar Item 中将蓝色的一种设置为Selected Image 的高亮图标。
  • 物品栏问题:我认为Bar ItemTab Bar Item 的一部分。如果您只是使用Default 图标,如Morefavoritedfeather,则无需设置Tab Bar Item。在你选择System Item作为Custom之后,你应该在Tab Bar Item中选择你自己的icon

【讨论】:

    【解决方案3】:

    我刚遇到同样的问题!然后我想通了!

    您的代码或设置没有任何问题

    这是关于您的图像

    你可以只看手机上的应用程序。(几乎)任何标签栏项目图标都是灰色的。

    所以图标只会将其 UN Hollow 部分显示为灰色!!

    [另外,根据官方API,他们是这样写的:

    默认情况下,未选中和选中的图像是根据源图像中的 alpha 值自动创建的。为防止系统着色,请为图像提供 UIImageRenderingModeAlwaysOriginal

    ]

    因此解决方案是:使用 Sketch 使您的实例的图标中心部分变为空心

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-10
      • 1970-01-01
      • 2017-02-27
      • 2018-02-11
      • 2018-01-20
      相关资源
      最近更新 更多