Niestandardowa animacja segmentu

Próbuję użyć niestandardowego segmentu, aby wykonać rodzaj animacji powiększenia. Gdy przejście zostanie wykonane, kontroler sourceViewController stanie się czarny, a następnie nastąpi powiększenie.

Próbowano także ustawić pushViewController: w bloku uzupełniania, ale przejście w ogóle nie jest wykonywane.

- (void)perform {

    UIViewController *sourceViewController = (UIViewController *) self.sourceViewController;
    UIViewController *destinationViewController = (UIViewController *) self.destinationViewController;

    [destinationViewController.view setTransform:CGAffineTransformMakeScale(0.5,0.5)];
    [destinationViewController.view setAlpha:0.0];

    [UIView animateWithDuration:0.5
                          delay:0.0
                        options:UIViewAnimationCurveEaseOut 
                     animations:^{
                         [destinationViewController.view setTransform:CGAffineTransformMakeScale(1.0,1.0)];
                         [destinationViewController.view setAlpha:1.0];
                         [sourceViewController.navigationController pushViewController:destinationViewController animated:NO];
                     } 
                     completion:^(BOOL finished){
                     }];

}

Co robię źle?

questionAnswers(1)

yourAnswerToTheQuestion