使用 UIImage RenderingMode Always Template 在 iPhone 6 上出现的颜色不同
Posted
技术标签:
【中文标题】使用 UIImage RenderingMode Always Template 在 iPhone 6 上出现的颜色不同【英文标题】:Colours appearing different on iPhone 6 plus using UIImageRenderingModeAlwaysTemplate 【发布时间】:2015-07-09 14:49:53 【问题描述】:我有一个在运行时重新着色的 PNG 图像:
logo.image = [[UIImage imageNamed:@"logo.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
logo.tintColor = [UIColor whiteColor];
这在我的 iPhone 6、所有模拟器等上显示为白色;但在 iPhone 6+ 上它是一种稍深的灰色。我错过了有什么原因吗?
这是 iPhone 6+ 的屏幕截图(所有导航项都应该是白色的 - 和其他所有设备一样)
【问题讨论】:
在上下文中它绝对不是白色的 您能否展示与这些导航项相关的代码? 粘贴一些代码并添加差异截图。设备 您能展示一下您是如何在导航栏中添加此徽标的吗?如果您可以发送一个图像集也很棒 【参考方案1】:barTintColor 默认是半透明的,除非你设置 半透明属性为NO。
试试这个
self.navigationController.navigationBar.tintColor = [UIColor whiteColor];
self.navigationController.navigationBar.translucent = NO;
【讨论】:
以上是关于使用 UIImage RenderingMode Always Template 在 iPhone 6 上出现的颜色不同的主要内容,如果未能解决你的问题,请参考以下文章
UIImage RenderingMode:UIImageRenderingModeAutomatic vs UIImageRenderingModeAlwaysOriginal vs UIImage
使用 UIImage RenderingMode Always Template 在 iPhone 6 上出现的颜色不同