ios - 使用 UIImage RenderingMode AlwaysTemplate 在 iPhone 6 上显示不同的颜色

标签 ios objective-c iphone uiimage

我有一个 PNG 图像,我正在运行时重新着色:

logo.image = [[UIImage imageNamed:@"logo.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
logo.tintColor = [UIColor whiteColor];

这在我的 iPhone 6、所有模拟器等上显示为白色;但它在 iPhone 6+ 上是略深的灰色。是否有我错过的原因?

这是 iPhone 6+ 的屏幕截图(所有导航项都应为白色 - 与所有其他设备一样)

6+ screenshot

最佳答案

enter image description here

barTintColor is made translucent by default unless you set the translucent property to NO.

试试这个

self.navigationController.navigationBar.tintColor = [UIColor whiteColor];
self.navigationController.navigationBar.translucent = NO;

关于ios - 使用 UIImage RenderingMode AlwaysTemplate 在 iPhone 6 上显示不同的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31320990/

相关文章:

iphone - CLLocation 导致 EXC_BAD_ACCESS

ios - 在 UITableViewCell 中设置 UIScrollView 内容偏移量在非重复使用的出队单元格中不起作用

iphone - 重新安装 UIKit 和 Foundation 框架后 iOS SDK 损坏

ios - 从月,日和年创建NSDate

iphone - 什么是 Objective-c 相当于 java 时间戳?

iphone - 开胃菜不起作用

iphone - 在应用程序运行时阻止 Iphone iOS 中的调用和短信

ios - 有没有办法在没有应用程序请求对话框的情况下向 Facebook 好友发送应用程序请求?

ios - 当委托(delegate)和数据源类分开时如何处理 tableview 单元格点击和 segues?

ios - 在移动过程中改变 Sprite 的垂直位置