9

你如何将这个黄色按钮的色调设置为灰色?我尝试添加图像,但没有运气。

这是屏幕截图:

替代文字

这是我当前的代码:

- (id)initWithStyle:(UITableViewStyle)style {
    if (self = [super initWithStyle:style]) {

        UIBarButtonItem *addButton = [[UIBarButtonItem alloc]
                                      initWithTitle:NSLocalizedString(@"Settings", @"")
                                      style:UIBarButtonItemStyleDone
                                      target:self
                                      action:@selector(GoToSettings)];
        [addButton setImage:[[UIImage imageNamed:@"bg_table.png"] retain]];

        self.navigationItem.rightBarButtonItem = addButton;
        self.navigationItem.hidesBackButton = TRUE;
        self.view.backgroundColor = [UIColor blackColor];
    }
    return self;
}
4

6 回答 6

12
self.navigationItem.rightBarButtonItem.tintColor = [UIColor colorWithRed:0.1f green:0.66f blue:0.26f alpha:0.7];
于 2012-04-19T06:14:52.347 回答
5

从 iOS 5.0 开始,您可以使用:

    [[UINavigationBar appearance] setTintColor:[UIColor yellowColor]];
于 2012-06-26T23:45:41.390 回答
4
 UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
 [button setBackgroundImage:[UIImage imageNamed:@"button_main.png"]
                                       forState:UIControlStateNormal];
 [button addTarget:self action:@selector(GotoSettings)
              forControlEvents:UIControlEventTouchUpInside];
 button.frame = CGRectMake(x, y, x1, x2);

 UIBarButtonItem *menuButton = [[UIBarButtonItem alloc] initWithCustomView:menu];
 self.navigationItem.rightBarButtonItem = menuButton;

 [button release];
 [menuButton release];
于 2010-06-03T04:30:34.973 回答
3

没有您的自定义图像是不可能的。

于 2009-08-27T14:56:44.353 回答
1

实际上,可以不使用图像作为按钮。

viewController.navigationController.navigationBar.tintColor = 
    [UIColor colorWithRed:0.16f green:0.36f blue:0.46 alpha:0.8];
于 2009-12-31T06:45:10.983 回答
0

当您在导航栏中设置按钮的图像时,您可能需要为其设置UIImageRenderingModeAlwaysOriginal

[addButton setImage:[[[UIImage imageNamed:@"bg_table.png"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal] retain]];

这是参考

于 2014-07-08T08:32:07.170 回答