更改UIBarbuttonItems颜色

时间:2012-12-03 05:33:49

标签: ios uinavigationbar uibarbuttonitem

如何将UIBarButtonItem's颜色设置为绿色?我正在使用 iOS 4 ,没有色彩属性。请帮帮我。

4 个答案:

答案 0 :(得分:15)

在iOS 4中:

UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setBackgroundImage:[UIImage imageNamed:@"green.png"] forState:UIControlStateNormal];
button.frame=CGRectMake(0.0, 100.0, 60.0, 30.0);
[button setTitle:@"Green" forState:UIControlStateNormal];
[button addTarget:self action:@selector(yourAction) forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *myButton = [[UIBarButtonItem alloc] initWithCustomView:button];

为此,您需要一个绿色图像,您正在使用此图像创建自定义按钮,并将其设置为UIBarButtonItem的视图。

在iOS 5中,您可以使用:

[[UIBarButtonItem appearance] setTintColor:[UIColor greenColor]];

请查看以下链接以获取更多信息:

  1. UIAppearance Protocol
  2. User interface customization

答案 1 :(得分:2)

请尝试以下代码。

self.navigationController.navigationBar.tintColor = [UIColor greenColor];
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:nil action:NULL];

答案 2 :(得分:0)

我知道这是一个老问题,但如果有人使用customView,您可以尝试:

myButton.customView.tintColor = [UIColor blackColor];

答案 3 :(得分:0)

Swift 4

这是您可以将自定义颜色添加到UIBarButtonItem

的方法
let barButtonItem = UIBarButtonItem.init(
        title: "Paired",
        style: .done,
        target: self,
        action: #selector(self.myAction(sender:))
      )
barButtonItem.tintColor = UIColor.init(red: 247/255, green: 65/255, blue: 126/255, alpha: 1.0)
self.navigationItem.rightBarButtonItem = barButtonItem