在UITableViewCell上使用IB的“用户定义的运行时属性”

我有一个单一的部分静态UITableView ; 该部分有两个UITableViewCell每个都有自己的UIImageView (见截图)。 我想修改单元格中使用的图像,以便它使用UIImageRenderingModeAlwaysTemplate的渲染模式(以便图像将尊重tintColor)。

我已经select了UITableViewCell并在IB的“用户定义的运行时属性”(见屏幕截图)中设置以下内容:注意:2是UIImageRenderingModeAlwaysTemplate的值。

当我运行应用程序Xcode生成以下警告:

 Failed to set (keyPath) user defined inspected property on (UIImageView): [<UIImageView 0x7fa490550d30> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key keyPath. 

任何想法我在这里做错了吗? 另外,我想不必为此下载代码 – 如果可能的话,我想坚持使用Storyboard。

谢谢!

在这里输入图像说明

在这里输入图像说明

由于imageView.image.renderingMode是一个只读属性,如果你不想写下代码,你必须做其他的事情。

最简单的方法是在Images.xcassets中创build一个新条目。 xcassets中的图像允许您select“ 渲染为:模板图像”

在这里输入图像说明