Переходы против UIViewControllerAnimatedTransitioning

При поиске того, как выполнять пользовательские анимации при переходе с одного контроллера на другой, я нашел некоторую информацию о UIViewControllerAnimatedTransitioning.

Итак, вопрос: зачем нам это вообще нужно, если у нас есть пользовательские переходы? Взаимозаменяемы они или нет? Если да, то почему Apple предлагает два способа выполнения одной и той же задачи?


person arthur.borisow    schedule 01.03.2015    source источник


Ответы (1)


Некоторые отличия:

  • Переходы можно использовать только с раскадровками.
  • Объекты аниматора можно использовать программно или вместе с переходами.
  • Объекты Animator позволяют вам установить индивидуальную конечную позицию и размер для вашего нового контроллера представления.
  • Объекты Animator можно настроить для выполнения специальных анимаций с помощью контроллеров навигации и представлений коллекций.
  • Объекты Animator также допускают интерактивные переходы с использованием UIViewControllerInteractiveTransitioning, чего нет в переходах.
person Aaron Brager    schedule 02.03.2015
comment
Спасибо за ответ. но можно ли иметь переход в раскадровке между контроллерами и настраивать пользовательский переход в коде для этих двух контроллеров? и если да, не могли бы вы указать на относительный учебник или какую-нибудь статью об яблоке, так как я нашел учебники только о том или ином - person arthur.borisow; 02.03.2015
comment
Это нормально делать все, что вы хотите! :) objc.io/issue-5/view-controller-transitions. html сочетает в себе переходы и объекты анимации. И albertopasca.it/whiletrue/2013/10/ подклассы UIStoryboardSegue для создания пользовательской анимации. - person Aaron Brager; 02.03.2015
comment
насколько я понимаю, переходы - это просто визуальные представления переходов в раскадровке и просто используют контроллеры анимации по умолчанию, если программист не реализует необходимые протоколы? А если я реализую протоколы, то когда я напишу performSegueWithIdentifier("PushToDetaildSegue", sender: self), он будет использовать предоставленный мной аниматор? - person arthur.borisow; 02.03.2015