7

UIAppearance を使用してアプリ全体で UINavigationBar のスタイルを設定する iOS 7 のみのアプリケーションがあります。

AppDelegate に次のコードがあります。

[[UINavigationBar appearance] setBackgroundImage:redImage forBarMetrics:UIBarMetricsDefault];
[[UINavigationBar appearanceWhenContainedIn:[MFMailComposeViewController class], nil] setBackgroundImage:blueImage forBarMetrics:UIBarMetricsDefault];

ただし、MFMailComposeViewController は redImage の背景で表示されます!

ドキュメントには次のように記載されています。

重要: このクラスのビュー階層はプライベートであるため、変更しないでください。ただし、UIAppearance プロトコルを使用して、インスタンスの外観をカスタマイズできます。

redImageしたがって、上記が機能しない理由はなく、とblueImageが異なる色の画像であることは 100% 確信しています。

他の誰かがこの問題を経験しましたか? iOS 7 のバグだと思いますが、iOS 6 をチェックする時間がありませんでした (これらの結果は iPad 4 を使用して取得しています)。

4

1 に答える 1