如何更改UINavigationBar中按钮的颜色?例如,我使用浅灰色背景的UINavigationBar,我需要按钮为深灰色(几乎是黑色)。为所有按钮类型提供一个解决方案将很酷,即后退按钮,带图像的按钮,带文本的按钮
感谢
答案 0 :(得分:2)
这是一个糟糕的黑客,但是当放在-viewDidAppear:方法中时,它会改变UINavigationButtons的背景颜色(实际上是色调)。
UINavigationBar *navBar = [[self navigationController] navigationBar];
for (UIView *subview in [navBar subviews])
{
if ([NSStringFromClass([subview class]) isEqualToString:@"UINavigationButton"])
{
if (![[subview title] isEqualToString:@"Done"])
[subview setTintColor:[UIColor colorWithRed:255.0/255.0 green:0.0/255.0 blue:0.0/255.0 alpha:1.0]];
}
}
不但是会改变UINavigationItemButtonViews的色调 - 这就是用于导航后退按钮的内容。如果有人找到影响他们的方法,请告诉我。
答案 1 :(得分:1)