UINavigationBar自定义色调停止按钮点击颜色更改

时间:2011-03-15 23:11:43

标签: iphone objective-c ios uinavigationcontroller

我使用子类为我的UINavigationBar设置了一个背景图像,并按如下方式覆盖了DrawRect方法:

- (void)drawRect:(CGRect)rect {

    // Drawing code 
    UIImage *img = [UIImage imageNamed: @"nav_bar.png"];
    [img drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];

    // Set tint colour
    [self setTintColor:[UIColor blackColor]];

}

正如您所看到的,我还更改了导航栏的tintColor,以便我的导航栏按钮自动更改颜色。

我的问题是,当您点击其中一个导航栏按钮时(必须是该效果的正确名称)时,它不会更改为与默认导航栏样式不同/较浅的颜色。

我也在我的一个导航栏中使用UISegmentControl,并且两个段项目都以相同的色调颜色显示,因此您无法分辨当前选择哪个,我认为这与我遇到的问题相同导航栏按钮。

非常感谢任何帮助。

感谢。

1 个答案:

答案 0 :(得分:1)

我认为颜色有变化,但这并不明显。您必须使用不同的tintColor,并使用自定义图像创建自定义UIBarButtonItem