【问题标题】:how to set uitoolbar's background similar to my navigation bar如何设置 uitoolbar 的背景类似于我的导航栏
【发布时间】:2011-02-16 08:23:57
【问题描述】:

大家好:
我为导航栏设置了自定义背景,这是我认为我从 IB 中选择的色调。现在我想以编程方式更改类似于我的导航栏的 uitoolbar(以编程方式添加)背景。有义务在这方面提供任何帮助。

对不起,伙计们,这实际上是导航控制器的工具栏。所以这对我有用:
self.navigationController.toolbar.tintColor=self.navigationController.navigationBar.tintColor;

感谢你们所有人的快速回复,尤其是@phooze,它让我朝着正确的方向前进:)

【问题讨论】:

    标签: iphone xcode uinavigationbar uitoolbar ios-4.2


    【解决方案1】:

    UIToolbar 也有一个tintColor 属性,就像 UINavigationBar 一样。您应该能够将一个设置为另一个:

    myToolbar.tintColor = myNavBar.tintColor;
    

    在您创建工具栏之后。请记住,此代码仅在从 NIB 加载 myNavBar 时才有效,因此最好将其放在 viewWillAppear: 或 viewDidLoad 中。

    您可以从 UINavigationController 的 navigationBar 属性访问 UINavigationBar(在您的情况下可能是 self.parentViewController)。

    【讨论】:

    • 我已经尝试过这个 phooze.. 在我的情况下不起作用。我在 viewWillAppear 中这样做:self.toolbar.tintColor = self.navigationController.navigationBar.tintColor;
    • 你能在代码中确认这两个项目都不是零吗?
    【解决方案2】:

    没有办法比较导航栏和工具栏的颜色,但是你可以用下面的代码设置工具栏的颜色

        aToolbar.barStyle = UIBarStyleBlackTranslucent;
        aToolbar.tintColor = [UIColor blackColor]; 
        aToolbar.alpha = 0.7;
    

    或

    aToolBar.tintColor = [UIColor colorWithRed:0.15 green:0.35 blue:0.45 alpha:0.6];
    

    【讨论】:

    • 你是对的,据我所知,无法比较颜色,但如果你已经有一个 UIColor 对象,你可以传递它(见我上面的回答)。
    【解决方案3】:

    我使用了以下 setBarTintColor,它对我有用,而 setTintColor 没有。

    【讨论】:

      【解决方案4】:

      如果您想要工具栏的默认黑色而不是您可以使用的颜色

      UIToolbar *ta;
      [ta setBarStyle:UIBarStyleBlack];
      

      【讨论】:

        【解决方案5】:

        仅使用以下代码..它正在工作..

        toolbar.tintColor = self.navigationController.navigationBar.tintColor;

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-03-29
          • 1970-01-01
          • 1970-01-01
          • 2012-07-09
          • 2015-06-19
          相关资源
          最近更新 更多