I had the following code that worked perfectly in iOS7.
[UIView animateWithDuration:0.5 animations:^(void) {
self.view.alpha = 0.5;
[self.navigation
Based on @Tiguero's answer, I created a small category class to solve the problem.
@implementation UIViewController (Extensions)
- (void) presentTransparentViewController:(UIViewController *)viewControllerToPresent animated:(BOOL)flag completion:(void (^)(void))completion
{
if(SYSTEM_VERSION_LESS_THAN(@"8.0")) {
self.parentViewController.navigationController.modalPresentationStyle = UIModalPresentationCurrentContext;
}else{
viewControllerToPresent.modalPresentationStyle = UIModalPresentationOverCurrentContext;
}
[self presentViewController:viewControllerToPresent animated:YES completion:completion];
}
@end
The iOS7 version required me to hardcode the controller that does the presenting.