OK、これで新しいテストプロジェクトを作成して、問題がまだあるかどうかを確認しました。そうだった。そこで、2 つのビュー コントローラーとビューを備えた非常にシンプルなアプリを作成しました。2 番目のビューにプッシュされたボタンがある最初のビュー。2 番目のビューは、このコードでナビゲーション バーのタイトルの色を赤に変更します。
- (void)viewDidLoad
{
[super viewDidLoad];
[self setTitle:@"SecondView"];
//sets navBar TITLE color and font
NSDictionary *textAttributes = [NSDictionary dictionaryWithObjectsAndKeys:
[UIColor redColor],NSForegroundColorAttributeName,
nil];
self.navigationController.navigationBar.titleTextAttributes = textAttributes;}
デフォルトのビュー 1 のタイトルの色は緑で、ナビゲーション バーは黒です。(これを設定して、私が何を意味するかを確認してください)
問題は、ナビゲーション バーに自動的に作成された [戻る] ボタンで戻るときに、タイトルが古い緑色を数ミリ秒間表示してから、新しい赤色にフェードすることです。viewWillAppear を呼び出して、ナビゲーション バーのタイトルの色を再設定しようとしましたが、うまくいきません。これはバグではありませんか?
編集私も委任して以前のナビゲーションバーの色を変更しようとしました...同じこと..wtf? これは明らかにバグに違いない..!
EDIT EDIT:すでにスタックされたビューに戻る場合にのみ、黒(常に黒)からカスタムカラーへの移行効果があることに気付きました。