0

私のアプリケーションフロー: AViewController -> BViewController -> CViewController(navigationController経由)。見た目は同じですが、見た目が異なるだけAViewControllerです。CViewControllerBViewController

私はそれをこのようにしました:

/// AppDelegate (should be 'super' settings)
[[UINavigationBar appearanceWhenContainedIn:[ABCNavigationController class], nil] setBackgroundImage:theImage forBarMetrics:UIBarMetricsDefault];

/// BViewController (should apply ONLY to BViewController)
[self.navigationController.navigationBar setBackgroundImage:BImage forBarMetrics:UIBarMetricsDefault];

問題は、CViewControllerロードした画像がに表示されBViewControllerないことですappDelegate。appDelegate設定に復元するにはどうすればよいですか?

backgroundImageは、私が設定した多くの要素の1つであることを強調する必要があります。ここでは、例として示しています。

4

1 に答える 1

0

CViewControllerナビゲーションバーの背景画像をに設定してみてください。で設定された画像を再表示nilviewWillAppearますBViewController

[self.navigationController.navigationBar setBackgroundImage:nil forBarMetrics:UIBarMetricsDefault];
于 2013-01-03T11:42:33.283 に答える