Iphone 导航栏的着色颜色

Iphone 导航栏的着色颜色,iphone,uinavigationbar,tint,Iphone,Uinavigationbar,Tint,当我使用下面的代码设置tintcolor时,它可以工作 self.navigationController.navigationBar.tintColor=[UIColor-brownColor] 但当我试着设置色调时,就像- `UIImage*navigationBarCol=[UIImage ImageName:@“navigatorBar_color.png”] self.navigationController.navigationBar.tintColor=[uicolorWithPa

当我使用下面的代码设置tintcolor时,它可以工作

self.navigationController.navigationBar.tintColor=[UIColor-brownColor]

但当我试着设置色调时,就像- `UIImage*navigationBarCol=[UIImage ImageName:@“navigatorBar_color.png”]

self.navigationController.navigationBar.tintColor=[uicolorWithPatternImage:navigationBarCol]; ` 然后它不显示确切的颜色,只显示黑色的阴影。 navigationBar_color.png是我想要设置的颜色的单像素图像。 我使用这个方法来设置程序中表行或其他对象的颜色,效果很好


此外,uicolorWithPatternImage方法应该返回UIColor,因此这两种方法看起来也与我类似。那么,您能告诉我为什么第二种方法对NavigationBar不起作用。

导航栏和控件上的tintColor仅用作计算控件中使用的渐变的基础。你不可能有一个很好的梯度图像,所以它只是使用它的一部分。听起来您想要的是UINavigationBar的一个自定义子类,带有一个重写的drawRect:method