1

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

[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"Nav Bar.png"] forBarMetrics:UIBarMetricsDefault];

これはうまく機能しますが、私は を使用MFMailComposeViewControllerしており、デフォルトの NavigationBar の外観にしたいと考えています。

それ、どうやったら出来るの?

編集:

私はこのコードを試しました:

[[UINavigationBar appearanceWhenContainedIn: [MFMailComposeViewController class], [UIViewController class], nil] setBackgroundImage:[UIImage imageNamed:@"Textured Background.png"] forBarMetrics:UIBarMetricsDefault];

私はまた、このコードだけを持ってみました。何も変わりません。Mail View Controller を含むデフォルトのナビゲーション バー。

私はそれが何かである可能性があると思いますappearanceWhenContainedIn:MFMailComposeViewController何が含まれるか誰か知っていますか?

4

2 に答える 2

0

これを試すことができます:

[UINavigationBar appearanceWhenContainedIn: [MFMailComposeViewController class], nil]

つまり、MFMailComposeViewController クラスに含まれるすべてのナビゲーション バー

ドキュメントから: UIAppearance

これにより外観プロキシが返されるため、次のように変更できます。

[[UINavigationBar appearanceWhenContainedIn: [MFMailComposeViewController class], nil] setBackgroundImage:myImage];

それが役立つことを願っています。

于 2013-08-07T01:09:51.347 に答える