以编程方式设置UIBarButtonItem填充颜色?

时间:2015-03-15 13:06:05

标签: ios swift uikit uibarbuttonitem

我在UIToolbar中有一组来自png文件的UIBarButtonItem。

当用户点击图标时,我希望该图标填充颜色以指示状态更改。

是否可以使用一组图像(可能通过编程方式更改某些属性)执行此操作,还是需要两组图像(每个状态都开启)?

2 个答案:

答案 0 :(得分:0)

确保您UIImage的呈现模式首先UIImageRenderingModeAlwaysTemplate

如果你是initWithImage,那么改变UIBarButtonItem的tintColor。

  

虽然UIBarButtonItem不是视图,但其tintColor属性的行为   与UIView相同。

否则,如果你使用UIImageView进行initWithCustomView,那么更改imageView&#t; tintColor也可能会起作用

否则你可以setItems:animated:NO UIToolBar每次点击后可能不是优雅的

答案 1 :(得分:0)

非常直接。您只需要在代码中执行以下操作:

imgView.image = [imgView.image
    imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
imgView.tintColor = [UIColor someColor];