为UINavigationBar设置背景颜色

我想开发UINavigationBar并为此设置背景颜色。 我已经创build了UINavigationBar但我有设置backgroundcolor的问题。 任何人都请帮助我。 谢谢。

 [self.navigationController.navigationBar setBackgroundColor:[UIColor redColor]]; 

像这样尝试。 我认为这对你有帮助。

编辑:更新代码以实际编译。

在新的iOs中它是如何工作的:

 self.navigationController.navigationBar.barStyle = UIBarStyleBlackOpaque; self.navigationController.navigationBar.barTintColor =[UIColor colorAzulNavegacion]; 

我必须每次都看这个,所以在这里加上我的答案(Swift)。 下面的代码是为应用程序中的所有导航栏设置。 如果你愿意的话,你可以在个别的导航栏上设定每一个。

您可以设置半透明度,标题文本颜色,背景颜色(这称为barTintColor,谢谢,苹果!)和酒吧button项目前景颜色,如下所示:

  // Title text color Black => Text appears in white UINavigationBar.appearance().barStyle = UIBarStyle.Black // Translucency; false == opaque UINavigationBar.appearance().translucent = false // BACKGROUND color of nav bar UINavigationBar.appearance().barTintColor = UIColor.redColor() // Foreground color of bar button item text, eg "< Back", "Done", and so on. UINavigationBar.appearance().tintColor = UIColor.whiteColor() 

你可以使用UINavigationBar的tint属性来改变它的颜色。 检查这篇文章 。 也有UIAppearance ,允许你改变你的应用程序的每个UINavigationBar的背景,这在我看来是相当强大的。 你可以检查这个 。

您可以使用navbar.tintColor = [UIColor redColor];设置色调的颜色navbar.tintColor = [UIColor redColor];

请参阅参考: 苹果文档

尝试这个:

 navigationBar.tintColor = [UIColor blackColor]; 

self.navigationController?.navigationBar.translucent = false

self.navigationController?.navigationBar.barTintColor = UIColor.redColor()

self.navigationController?.navigationBar.barStyle = UIBarStyle.BlackTranslucent

您可以使用以下属性自定义UINavigationBar

  • @property(nonatomic, assign) UIBarStyle barStyle
  • @property(nonatomic, retain) UIColor *tintColor
  • setBackgroundImage:forBarMetrics:
  • @property(nonatomic, copy) UIColor *backgroundColor

有关更多方法和属性,请检查UINavigationBarUIView的类参考

 self.navigationController.navigationBar.tintColor = [UIColor blackColor];