我在xcode项目中将自定义图像添加到assets.xcassets为3x。它显示很好。 接下来,我通过选择系统项目作为自定义和选定图像作为自定义图像,将iage添加到标签栏项目。还通过选择自定义图像填充条形图像。
在我的故事板中,图标图标在标签栏项目和栏项目中都完全变灰。
图像是在Gimp中创建的,因为透明图像大小缩放到75x75
答案 0 :(得分:1)
for item in self.tabBar.items! {
item.image = item.image?.imageWithRenderingMode(.AlwaysOriginal)
item.selectedImage = item.selectedImage?.imageWithRenderingMode(.AlwaysOriginal)
}
答案 1 :(得分:0)
在iOS7之后,您可以使用imageWithRenderingMode
设置使用当前视图的色调颜色渲染UIImage:
<强> AlwaysOriginal 强>
始终绘制原始图像,而不将其视为模板。
<强> AlwaysTemplate 强>
始终将图像绘制为模板图像,忽略其颜色 信息。
<强>自动强>
对图像所在的上下文使用默认渲染模式 使用
所以你想要的是:
self.barItem.image = UIImage(named: "yourImage")?.imageWithRenderingMode(.AlwaysOriginal)
通过将renderingMode设置为AlwaysOriginal
,UIImage将始终绘制原始图像并且不会应用模板。然后你可以得到你想要的东西。