是否可以在不着色图标的情况下为 TabBar 着色?

Posted

技术标签:

【中文标题】是否可以在不着色图标的情况下为 TabBar 着色?【英文标题】:Is is possible to tint the TabBar without tinting the icons? 【发布时间】:2013-03-09 16:25:10 【问题描述】:

我的应用设计师想要一个银色标签栏,我通过设置色调来实现它,并且效果很好:

但这也会以难以看到的方式对标签栏图标进行着色,所以我希望能够控制这些图标的颜色,但我不知道如何。我尝试过使用黑色图标和灰色图标,但它们在标签栏中的显示相同。以下是源图片:

但它们在标签栏中的显示完全相同,即与标签栏本身相同的银色,或者如果选择了标签,则为蓝色。 (我在这里显示主页图标,但其他图标也是如此。)

那么我怎样才能给标签栏着色但控制图标颜色呢?你能在标签栏中有全彩图标吗?

【问题讨论】:

【参考方案1】:

您无法更改UITabBarItem 图标的色调颜色,但您可以将图像设置为选中和未选中状态:

[self.tabBarItem setFinishedSelectedImage:[UIImage imageNamed@"home-selected"]
              withFinishedUnselectedImage:[UIImage imageNamed@"home-unselected"];

【讨论】:

成功了,谢谢。但是为什么会有 Image 属性和 FinishedImage 属性呢? UIKit 不对完成的图像提供任何自动处理。

以上是关于是否可以在不着色图标的情况下为 TabBar 着色?的主要内容,如果未能解决你的问题,请参考以下文章

为啥 glDrawElments() 在不使用任何着色器的情况下工作?

为什么glDrawElments()在不使用任何着色器的情况下工作?

如何从 QOpenGLShader 获取着色器版本?

可以将 GLSL 着色器应用于 SDL_Textures 吗?

顶点着色器 VAO 是不是需要 VBO?

在 Eclipse 控制台中为日志着色