UIVisualEffectView в iOS 10

Я представляю UIViewController, который содержит UIVisualEffectView следующим образом:

-(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;
    }
}

Как вы можете видеть, я использую UIModalPresentationStyleOverFullScreen, чтобы при появлении контроллера представления с размытием размытие было «применено» к содержимому контроллера представления, который его представляет; у перехода есть стиль перехода Cross Dissolve.

Эффект выглядит как и ожидалось. Однако в iOS 9 презентация более плавная, чем в iOS 10. В iOS 10, когда появляется контроллер вида, это выглядит как двухэтапная анимация, в то время как в iOS 9 размытие применяется сразу.

Картинка стоит тысячи слов, поэтому я загрузил видео, показывающее это странное поведение:

UIVisualEffectView iOS 9 против iOS 10

У меня вопрос: как я могу представить контроллер представления в iOS 10, как он представлен в iOS 9?

Ответы на вопрос(3)

Ваш ответ на вопрос