Почему не вызывать метод presentationControllerForPresentedViewController из UIViewControllerTransitioningDelegate?

Я хочу использовать пользовательский UIPresentationController. Для этого, когда я хочу показать новую сцену, я вызываю этот код

UIViewController *cv = [[...]]; cv.transitionManager=[[MyTransition alloc] init]; cv.transitioningDelegate=actionSheet.transitionManager; cv.modalTransitionStyle = UIModalPresentationCustom; [self presentViewController:cv animated:YES completion:^{ }]; 

у моего менеджера перехода есть методы:

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

но метод presentationControllerForPresentedViewController не вызывает!

Зачем?

2 Solutions collect form web for “Почему не вызывать метод presentationControllerForPresentedViewController из UIViewControllerTransitioningDelegate?”

Он будет вызываться только в том случае, если ваш текущий контроллер просмотра использует UIModalPresentationCustom представления UIModalPresentationCustom

modalPresentationStyle вместо modalTransitionStyle – правильный ответ 🙂

  • Как создать пользовательское расширение клавиатуры с изображениями на нем в Objective-C?
  • Создайте приложение iPad, которое может отправлять / получать данные через USB-кабель?
  • Как создать часть заполненного круга с использованием Core Graphics / Quartz
  • как ограничить диапазон символов uitextfield до 10 цифр
  • Изменить AVMetadataItem
  • Как избежать салфетки для удаления вызова setEditing в UITableViewCell
  • Как перемещать четыре изображения из одного места в другое по горизонтали в ios
  • Как использовать NSCache с универсальной реализацией NSDiscardableContent
  • Не удалось открыть документ «MainStoryBoard.storyboard»
  • Нужен ли автозапуск, если я не создаю автореализованные объекты?
  • Основной учебник OpenCV
  • PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.