UINavigationBar: внешний вид работает, но не UINavigationBar: внешний вид, когда содержится в

У меня есть требование установить пользовательский цвет панели навигации, и следующий код сделает это:

[[UINavigationBar appearance]
            setBackgroundImage:navigationBarTileImage forBarMetrics:UIBarMetricsDefault];

Однако мое приложение вызывает систему MFMailComposeViewController и MFMessageComposeViewController, и я хочу, чтобы панель навигации была цветом по умолчанию для этих представлений, поэтому я сделал это:

[[UINavigationBar appearanceWhenContainedIn: [MyViewControllerBase class], [MyViewController1 class], [MyViewController2 class], nil]
    setBackgroundImage:navigationBarTileImage forBarMetrics:UIBarMetricsDefault];

Однако теперь панель навигации больше не имеет моего цвета по умолчанию. Почему внешний вид, когда ContainedIn не работает?

Ответы на вопрос(2)

Ваш ответ на вопрос