2016-10-19 3 views
0

を使用しません新しいビューコントローラにプッシュしていないとtitleプロパティを設定しようとすると、色合いはもはや適用されます。UINavigationControllerタイトルは私が白であることを私のナビゲーションバーのデフォルトの色合いを調整してきたし、それが適切に私のナビゲーションバーの各要素の色を調整し、正しい色合い

Navigation bar with inappropriately tinted title

私はラベルやSOMETを供給できることを知っています私のビューコントローラのtitleView属性に似ていますが、それはトリックを行うでしょうが、それは多くの仕事(比較的話しています)であり、私の心の中では、テキストはナビゲーションバーの色合いの色に変わります。私は何か他のものを逃している?または、カスタムのtitleViewをオーバーライドする必要があるこの標準的な動作ですか?

答えて

1

色合いプロパティは、タイトルの色に影響を与えません。タイトルカラーを(フォントのような他の属性と一緒に)グローバルに設定するには、という外観のtitleTextAttributesプロパティをニーズに合わせて設定します。ちょうどあなたのAppDelegateにこのコードを置くか、どこか他の適切な起動時に呼び出される:

スウィフト3:

UINavigationBar.appearance().titleTextAttributes = [NSForegroundColorAttributeName: UIColor.white] 

スウィフト、私は他の方法があることを得る2

UINavigationBar.appearance().titleTextAttributes = [NSForegroundColorAttributeName: UIColor.whiteColor()] 
0

正しく動作しません。しかし、2番目のビューの色を設定する必要があります。このコードを使用して問題を解決することができます。 2番目のビューでは、このコードを記述してナビゲーションタイトルの色とフォントを設定します。


navigationController!.navigationBar.titleTextAttributes = ([NSFontAttributeName: UIFont(name: "Helvetica", size: 25)!,NSForegroundColorAttributeName: UIColor.white]) 


+0

テキストのスタイルを設定します。私の質問は、ナビゲーションバーのデフォルトの動作がタイトルを黒で表示し、色合い設定を無視するかどうかということです。 – ngoue

+0

あなたのソリューションが@BJHStudiosに似ているように見えます。彼の答えは明示的に答えていますが、あなたはテキスト属性を設定する方法しか示していません。 – ngoue