I've implemented preferredStatusBarStyle on some view controllers, but it never gets called. I added calls to setNeedsStatusBarAppearanceUpdate but that had no effect. I also tried changing the Info.plist value for UIViewControllerBasedStatusBarAppearance, but that also had no effect.
What determines whether preferredStatusBarStyle is called on a view controller?