I want to use a custom UIPresentationController. To do this, when I want to show a new scene, I call this code
UIViewController *cv = [[...]]; cv.transitionManager=[[MyTransition alloc] init]; cv.transitioningDelegate=actionSheet.transitionManager; cv.modalTransitionStyle = UIModalPresentationCustom; [self presentViewController:cv animated:YES completion:^{ }];
my transition manager has methods:
#pragma mark - UIViewControllerTransitioningDelegate - (id <UIViewControllerAnimatedTransitioning>)animationControllerForPresentedController:(UIViewController *)presented presentingController:(UIViewController *)presenting sourceController:(UIViewController *)source{ return self; } - (id <UIViewControllerAnimatedTransitioning>)animationControllerForDismissedController:(UIViewController *)dismissed{ return self; } - (id <UIViewControllerInteractiveTransitioning>)interactionControllerForPresentation:(id <UIViewControllerAnimatedTransitioning>)animator{ return nil; } - (id <UIViewControllerInteractiveTransitioning>)interactionControllerForDismissal:(id <UIViewControllerAnimatedTransitioning>)animator{ return self; } - (UIPresentationController *)presentationControllerForPresentedViewController:(UIViewController *)presented presentingViewController:(UIViewController *)presenting sourceViewController:(UIViewController *)source { MyPresentationController *presentationController = [[MyPresentationController alloc] initWithPresentedViewController:presented presentingViewController:presenting]; return presentationController; }
but the presentationControllerForPresentedViewController method does not call!
Why?
source share