UIVisualEffectView en iOS 10
Estoy presentando un UIViewController que contiene un UIVisualEffectView de la siguiente manera:
-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
[self performSegueWithIdentifier:@"segueBlur" sender:nil];
}
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if([segue.identifier isEqualToString:@"segueBlur"]) {
((UIViewController *)segue.destinationViewController).providesPresentationContextTransitionStyle = YES;
((UIViewController *)segue.destinationViewController).definesPresentationContext = YES;
((UIViewController *)segue.destinationViewController).modalPresentationStyle = UIModalPresentationOverFullScreen;
}
}
Como puede ver, estoy usando UIModalPresentationStyleOverFullScreen para que cuando aparezca el controlador de vista con desenfoque, el desenfoque se 'aplique' al contenido del controlador de vista que lo presenta; el segue tiene un estilo de transición Cross Dissolve.
El efecto se ve como se esperaba. Sin embargo, en iOS 9 la presentación es más suave que en iOS 10. En iOS 10, cuando aparece el controlador de vista, parece una animación de 2 pasos, mientras que en iOS 9, el desenfoque se aplica de inmediato.
Una imagen vale más que mil palabras, así que subí un video que muestra este extraño comportamiento:
UIVisualEffectView iOS 9 vs iOS 10
Mi pregunta es: ¿Cómo puedo presentar el controlador de vista en iOS 10 como se presenta en iOS 9?