2011-02-16 4 views
6

こんにちは皆さん:
私はナビゲーションバーのカスタム背景を設定しました。色合いは私がIBから選んだと思います。今私はプログラムで私のナビゲーションバーに似た私のuitoolbarの(プログラムで追加された)背景を変更したい。この点で助けを必要とします。uitoolbarの背景をナビゲーションバーに似たように設定する

申し訳ありませんが、私の悪いのは、実際にはナビゲーションコントローラのツールバーです。そう、これは私の仕事:迅速な対応のための
self.navigationController.toolbar.tintColor=self.navigationController.navigationBar.tintColor;

感謝uの男のすべてを正しい方向に私を設定している、特に@phooze :)

答えて

11

をUIToolbarもちょうどUINavigationBarのように、tintColor性質を持っています。ツールバーの作成後、

myToolbar.tintColor = myNavBar.tintColor; 

のいずれかを設定することができます。このコードは、NIBからmyNavBarがロードされている場合にのみ機能するので、viewWillAppear:またはviewDidLoadに配置することをお勧めします。

UINavigationBarは、UINavigationControllerのnavigationBarプロパティ(おそらくあなたの場合はelf.parentViewController)からアクセスできます。

あり
+0

私はすでにこのプーさんを試してきました。私の場合はうまくいきません。私は私のviewWillAppearでこれをやっています:self.toolbar.tintColor = self.navigationController.navigationBar.tintColor; – Tobias

+0

コードのその時点で、両方の項目が非nilであることを確認できますか? – makdad

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]; 
+1

あなたが知っている限り色を比較することはできませんが、UIColorオブジェクトをすでに持っていればそれを渡すことができます(上記の答えを参照)。 – makdad

0

とツールバーの色を設定することができますあなたが使うことができるよりも

UIToolbar *ta; 
[ta setBarStyle:UIBarStyleBlack]; 
0

それだけでは、以下のコードを使用してください。

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

0

私はsetTintColorの間に働いていた以下のsetBarTintColorを使用しました。

関連する問題