【问题标题】:Change the color of tabbar and navigation bar programmatically以编程方式更改标签栏和导航栏的颜色
【发布时间】:2011-12-25 17:57:25
【问题描述】:

UITabBarController 的默认颜色为黑色,UINavigationController 的默认颜色为蓝色。我需要将此颜色更改为其他颜色。如何以编程方式执行此操作?

我想我找到了如何更改导航栏颜色但我不明白代码 [navBorder setBackgroundColor:[UIColor colorWithWhite:200.0f/255.f alpha:0.8f]];

我不明白colorWithWhite 是做什么的?

无论如何我如何为UITabBarController 添加颜色?

【问题讨论】:

    标签: iphone objective-c ios uinavigationcontroller uitabbarcontroller


    【解决方案1】:

    要在 iOS 5 中更改颜色,请设置 UITabBarController 的 tabBartintColor。这是我这样做的一个例子:

    https://github.com/mattneub/Programming-iOS-Book-Examples/blob/master/ch19p533tabBarController/p464p475tabBarController/AppDelegate.m

    (您可以下载该项目并亲自尝试。)

    colorWithWhite:alpha: 是设置灰色的快捷方式,可能带有透明度。

    【讨论】:

    • 是的,@MichaelDautermann,注意 iOS 5 中出现的一些非常花哨和怪异的界面。你可以为所有内容着色!
    【解决方案2】:

    要以编程方式更改UITabBar 的颜色,您可以使用tintcolor 属性,以下代码行将帮助您解决

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

    更改标签栏颜色

    tabBar.tintColor = [UIColor greenColor];
    

    【讨论】:

      【解决方案3】:

      iOS 5 中有一个外观代理

      UIAppearance.h class
      
      @Protocol UIAppearance <NSObject>
      +(id) appearance ;
      +(id) appearanceWhenContainedIn:(Class <UIAppearanceContainer> containerClass,..)
      ...
      
      @end
      
      #define UI_APPEARANCE_SELECTOR
      

      这将帮助您根据需要更改控件的外观... 您还可以观看 WWDC 2011 会议视频的“自定义 UIKit 控件的外观”了解更多信息。

      例子:-

      [[UINavigationBar appeareance] setBackGroundImage:[UIImage imageNamed:@"navBackground"] forBarMetrics:UIBarMetricsDefault];
      

      它将导航栏图像更改为应用程序资源文件夹中的navBackground图像,并将导航栏指标设置为默认值。

      [[UIButton ButtonWhenContainedIn:[CustomViewController Class],[UINavigationController Class],nil] setTitleColor:[UIColor redColor] forControlState:UIControlStateNormal];
      

      当包含在此层次结构中时,它将设置按钮的标题颜色为红色。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-03-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-08-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多