导航栏上的UIBarButtonItem与UIBarButtonItemStyleDone样式不显示为蓝色

时间:2011-12-26 23:05:53

标签: iphone navigationbar uibarbuttonitemstyle

我在导航栏上有一个完成按钮,我希望它显示为蓝色。但只是做以下似乎没有帮助。我在这里错过了什么?我知道如果导航栏为黑色,按钮将自动显示为蓝色,但我不希望此视图控制器上导航栏的颜色为黑色。

- (UIBarButtonItem *)doneButton {
    UIBarButtonItem *doneButton = [[[UIBarButtonItem alloc] initWithTitle:@"Done" 
                                                                    style:UIBarButtonItemStyleDone 
                                                                   target:self 
                                                                   action:@selector(done:)] autorelease];

    return doneButton;
}

2 个答案:

答案 0 :(得分:0)

您无需定义自己的完成按钮。只要它被称为“完成”,您就可以使用预定义的barbuttonsystemitemdone:

   [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone Target:...

答案 1 :(得分:0)

在iOS5之前更改NavigationBar和BarItems外观的组合并不容易。

标准方法是子类NavigationBar。这个好sample code可能会有所帮助,即使不是直接的。

在iOS5中,您可以使用“外观代理”。好的教程是here