I currently use the iOS 7 mechanism of defining the (UIStatusBarStyle)preferredStatusBarStyle selector on UINavigationController subclasses to control the appearance of the status bar in modally presented views (returning UIStatusBarStyleLightContent). With an instance of MFMailComposeViewController, I am unable to affect the appearance of the status bar in any way.
It seems like the issue is that the top view of the MFMailComposeViewController (which is a UINavigationController subclass) is a MFMailComposeInternalViewController, which is private and undocumented and seems like something I shouldn't be messing with. Trying to subclass or create a category of it generates compiler errors. It's preferredStatusBarStyle is UIStatusBarStyleDefault, where I want it to be UIStatusBarStyleLightContent.
Other answers have suggested setting the plist value of "View controller-based status bar appearance" to NO, but I cannot do this without affecting other portions of my application. Is there any way to change the appearance of this status bar?