UINavigationBar: aparência funciona mas não UINavigationBar: appearanceWhenContained em

Eu tenho um requisito para definir a barra de navegação para uma cor personalizada e este código a seguir fará isso:

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

No entanto, meu aplicativo invoca o sistema MFMailComposeViewController e MFMessageComposeViewController e quero que a barra de navegação seja a cor padrão para essas visualizações, portanto, fiz isso:

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

No entanto, agora a barra de navegação não tem mais a minha cor padrão. Por que a aparência é contada quando não está funcionando?

questionAnswers(2)

yourAnswerToTheQuestion