UINavigationBar: la apariencia funciona pero no UINavigationBar: apariencia cuando se contiene

Tengo el requisito de configurar la barra de navegación en un color personalizado y el siguiente código lo hará:

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

Sin embargo, mi aplicación invoca el sistema MFMailComposeViewController y MFMessageComposeViewController y quiero que la barra de navegación sea el color predeterminado para esas vistas, así que hice esto:

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

Sin embargo, ahora la barra de navegación ya no tiene mi color predeterminado. ¿Por qué AppWhenContainedIn no funciona?

Respuestas a la pregunta(2)

Su respuesta a la pregunta