Avatar ·

如何更改iOS和WatchKit中UIImage的显示颜色(tintColor)?

大家好!我是Swift新手,一直搞不懂如何更改应用中的图标颜色。我有一个包含图片的UIImageView,想根据主题或状态(例如,按钮激活/未激活)动态更改其颜色。我尝试直接设置UIImageView的`tintColor`属性,但颜色没有变化——图标保持原始颜色(黑色或灰色)。 这是我的代码: ```swift let imageView = UIImageView(image: UIImage(named: "myIcon")) imageView.tintColor = .red ``` 没有任何效果。我搜索了一下——有人说需要使用`withRenderingMode(.alwaysTemplate)`。我试了: ```swift let image = UIImage(named: "myIcon")?.withRenderingMode(.alwaysTemplate) imageView.image = image imageView.tintColor = .red ``` 在iOS中这有效,但在Watch应用(WatchKit)中无效。因为WKInterfaceImage没有`tintColor`属性。该怎么办?是否可以在Apple Watch上更改图标颜色?还是需要为每种颜色准备不同的图片?