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

时间:2014-09-15 16:46:06

标签: ios objective-c uitableview tintcolor

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

我已选择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。

谢谢!

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:2)

由于imageView.image.renderingMode是一个只读属性,如果您不想编写代码,则必须执行其他操作。

实现此目的的最简单方法是在Images.xcassets中创建一个新条目。 xcassets中的图像允许您选择渲染为:模板图像

enter image description here