ナビゲーションバーをカスタムカラーに設定する必要があります。次のコードでそれを実行できます。
[[UINavigationBar appearance]
setBackgroundImage:navigationBarTileImage forBarMetrics:UIBarMetricsDefault];
ただし、私のアプリケーションはシステムMFMailComposeViewControllerとMFMessageComposeViewControllerを呼び出し、ナビゲーションバーをこれらのビューのデフォルトの色にしたいので、次のようにしました。
[[UINavigationBar appearanceWhenContainedIn: [MyViewControllerBase class], [MyViewController1 class], [MyViewController2 class], nil]
setBackgroundImage:navigationBarTileImage forBarMetrics:UIBarMetricsDefault];
ただし、ナビゲーションバーのデフォルトの色はなくなりました。なぜappearanceWhenContainedInが機能しないのですか?