UIViewControllerContextTransitioning
Наследование
Не применимый
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 7.0 и позже.
UIViewControllerContextTransitioning
методы протокола предоставляют контекстную информацию для анимаций перехода между контроллерами представления. Не принимайте этот протокол в своих собственных классах, и при этом Вы не должны непосредственно создавать объекты, принимающие этот протокол. Во время перехода объекты Animator, вовлеченные в тот переход, получают полностью сконфигурированный объект контекста от UIKit. Пользовательские объекты Animator — объекты, принимающие UIViewControllerAnimatorTransitioning
или UIViewControllerInteractiveTransitioning
протокол — должен просто получить информацию, в которой они нуждаются от предоставленного объекта.
Объект контекста инкапсулирует информацию о представлениях и контроллерах представления, вовлеченных в переход. Это также содержит подробные данные о, как выполнить переход. Для интерактивных переходов интерактивный объект Animator использует методы этого протокола для создания отчетов о прогрессе анимации. Когда запуски анимации, интерактивный объект Animator должен сохранить указатель на объект контекста. На основе взаимодействия с пользователем объект Animator тогда вызывает updateInteractiveTransition:
, finishInteractiveTransition
, или cancelInteractiveTransition
методы для создания отчетов о прогрессе к завершению анимации. Те методы отправляют ту информацию в UIKit так, чтобы это могло управлять синхронизацией анимаций.
-
containerView () - containerView
ТребуемыйПредставление, действующее как суперпредставление для представлений, вовлеченных в переход. (требуемый)
Возвращаемое значение
Представление, содержащее оба представления, вовлеченные в переход.
Обсуждение
Контейнерное представление действует как суперпредставление всех других представлений (включая те из представления и представленных контроллеров представления) во время последовательности анимации. UIKit устанавливает это представление для Вас и автоматически добавляет представление контроллера представления представления к нему. Объект Animator ответственен за добавление представления представленного контроллера представления, и объект Animator или контроллер представления должны использовать это представление в качестве контейнера для всех других представлений, вовлеченных в переход.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
Возвращает контроллер представления, вовлеченный в переход. (требуемый)
Объявление
Swift
func viewControllerForKey(_
key
: String) -> UIViewController?Objective C
- (UIViewController *)viewControllerForKey:(NSString *)
key
Параметры
key
Ключ, идентифицирующий контроллер представления, Вы хотите. Для списка возможных ключей посмотрите Ключи Перехода Контроллера Представления.
Возвращаемое значение
Контроллер представления возражает для указанного ключа или
nil
если не мог бы быть найден контроллер представления.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
viewForKey (_:) - viewForKey:
ТребуемыйВозвращает указанное представление, вовлеченное в переход. (требуемый)
Объявление
Параметры
key
Ключ, идентифицирующий представление, Вы хотите. Для списка возможных ключей посмотрите Ключи Перехода Представления.
Возвращаемое значение
Объект представления для указанного ключа или
nil
если не могло бы быть найдено представление.Обсуждение
Представление, возвращенное этим методом, может или может не быть корневым представлением соответствующего контроллера представления. Ситуация, где представления могут не быть тем же, состоит в том, когда предоставленный системой контроллер представления устанавливает другое представление под представленным представлением контроллера представления.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
Возвращает прямоугольник начального кадра для указанного представления контроллера представления. (требуемый)
Объявление
Swift
func initialFrameForViewController(_
vc
: UIViewController) -> CGRectObjective C
- (CGRect)initialFrameForViewController:(UIViewController *)
vc
Параметры
vc
Контроллер представления, прямоугольник кадра которого Вы хотите.
Возвращаемое значение
Прямоугольник кадра для представления или
CGRectZero
если прямоугольник кадра не известен, или представление не видимо.Обсуждение
Прямоугольник, возвращенный этим методом, представляет размер соответствующего представления в начале перехода. Для контроллера представления, который является уже экранным, этот прямоугольник обычно соответствует прямоугольник кадра контейнерного представления. Для представляемого контроллера представления значение, возвращенное этим методом, обычно
CGRectZero
потому что представление еще не находится на экране.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
Возвращает прямоугольник конечного кадра для указанного представления контроллера представления. (требуемый)
Объявление
Swift
func finalFrameForViewController(_
vc
: UIViewController) -> CGRectObjective C
- (CGRect)finalFrameForViewController:(UIViewController *)
vc
Параметры
vc
Контроллер представления, прямоугольник кадра которого Вы хотите.
Возвращаемое значение
Прямоугольник кадра для представления или
CGRectZero
если прямоугольник кадра не известен, или представление не видимо.Обсуждение
Прямоугольник, возвращенный этим методом, представляет размер соответствующего представления в конце перехода. Для представления, покрываемого во время представления, значение, возвращенное этим методом, могло бы быть
CGRectZero
но это мог бы также быть прямоугольник допустимого кадра.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
isAnimated () - isAnimated
ТребуемыйВозвращает указание булева значения, в случае модального стиля презентации, должен ли быть анимирован переход. (требуемый)
Объявление
Swift
func isAnimated() -> Bool
Objective C
- (BOOL)isAnimated
Возвращаемое значение
Всегда возвраты
YES
true
поскольку модальные представления разрабатывают кромеUIModalPresentationCustom
стиль. ДляUIModalPresentationCustom
стиль, возвратыYES
true
если переход должен быть анимирован илиNO
false
если это не должно.Обсуждение
Вызовите этот метод, чтобы определить, должен ли пользовательский переход быть анимирован в место. Если возвращается этот метод
NO
false
, вставьте заключительные представления в контейнерное представление, не анимируя изменение.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
isInteractive () - isInteractive
ТребуемыйВозвращает булево значение, указывающее, является ли переход интерактивным. (требуемый)
Объявление
Swift
func isInteractive() -> Bool
Objective C
- (BOOL)isInteractive
Возвращаемое значение
YES
true
если переход является интерактивным илиNO
false
если это не.Обсуждение
Переход является интерактивным, только если делегат контроллера представления обеспечивает соответствующий интерактивный объект Animator.
Интерактивные переходы являются диском сгенерированными пользователями событиями. Один общий сценарий должен использовать устройство распознавания жеста для создания отчетов относительно текущего прогресса анимации. Устройство распознавания жеста вызывает методы этого объекта контекста, указывающие процент завершения перехода или указывающие, что переход был отменен или завершен пользователем.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
presentationStyle () - presentationStyle
ТребуемыйВозвращает стиль презентации для перехода контроллера представления. (требуемый)
Объявление
Swift
func presentationStyle() -> UIModalPresentationStyle
Objective C
- (UIModalPresentationStyle)presentationStyle
Возвращаемое значение
Стиль презентации для использования при представлении заключительного контроллера представления.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
completeTransition (_:) - completeTransition:
ТребуемыйУведомляет систему, что сделана анимация перехода. (требуемый)
Объявление
Swift
func completeTransition(_
didComplete
: Bool)Objective C
- (void)completeTransition:(BOOL)
didComplete
Параметры
didComplete
YES
true
если переход к представленному контроллеру представления завершился успешно илиNO
false
если исходный контроллер представления все еще выводится на экран.Обсуждение
Необходимо вызвать этот метод после того, как анимации завершились, чтобы уведомить систему, что сделана анимация перехода. Параметр, который Вы передаете, должен указать, завершились ли анимации успешно. Для интерактивных анимаций необходимо вызвать этот метод в дополнение к
finishInteractiveTransition
илиcancelInteractiveTransition
метод. Лучшее место для вызова этого метода находится в блоке завершения анимаций.Реализация по умолчанию этого вызовы метода объект Animator
animationEnded:
метод, чтобы дать ему шанс выполнить любую последнюю очистку.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
Обновляет процент завершения перехода. (требуемый)
Объявление
Swift
func updateInteractiveTransition(_
percentComplete
: CGFloat)Objective C
- (void)updateInteractiveTransition:(CGFloat)
percentComplete
Обсуждение
При отслеживании пользовательских событий устройства распознавания жеста или интерактивные объекты Animator должны вызвать этот метод регулярно для обновления прогресса к завершению перехода. Если во время отслеживания взаимодействия пересекают порог, который Вы рассматриваете, показывает завершение или отмену перехода, прекратите отслеживать события и вызовите
finishInteractiveTransition
илиcancelInteractiveTransition
метод.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
Уведомляет систему, что взаимодействие с пользователем сигнализировало завершение перехода. (требуемый)
Объявление
Swift
func finishInteractiveTransition()
Objective C
- (void)finishInteractiveTransition
Обсуждение
При отслеживании взаимодействия с пользователем устройства распознавания жеста или интерактивный объект Animator должны вызвать этот метод, когда взаимодействия предполагают, что переход теперь завершен. Например, если пользователь сильно ударяет палец, и сенсорные события указывают, что сильно ударить расстояние пересеклось, порог должен был завершить жест, вызвать этот метод, когда соответствующий сенсорный конец событий, чтобы позволить системе знать, что это может теперь завершить переход.
Всегда следуйте за вызовами к этому методу с вызовом к
completeTransition:
метод для завершения перехода.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
Уведомляет систему, что взаимодействие с пользователем отменило переход. (требуемый)
Объявление
Swift
func cancelInteractiveTransition()
Objective C
- (void)cancelInteractiveTransition
Обсуждение
При отслеживании взаимодействия с пользователем устройства распознавания жеста или интерактивный объект Animator должны вызвать этот метод, когда взаимодействия предполагают, что пользователь хочет отменить или прервать переход контроллера представления. Например, если пользователь изменит сильно ударить направление и сенсорный конец событий, предполагая, что пользователь отклонил переход, то Вы вызовете этот метод.
Всегда следуйте за вызовами к этому методу с вызовом к
completeTransition:
метод для завершения перехода.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
Возвращает булево значение, указывающее, был ли отменен переход. (требуемый)
Объявление
Swift
func transitionWasCancelled() -> Bool
Objective C
- (BOOL)transitionWasCancelled
Возвращаемое значение
YES
true
если переход был отменен илиNO
false
если это является продолжающимся или обычно закончено.Обсуждение
Можно вызвать этот метод от объекта Animator, чтобы определить, был ли отменен переход. Вызов
cancelInteractiveTransition
метод заставляет этот метод возвращатьсяYES
true
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
targetTransform () - targetTransform
ТребуемыйВозвращает преобразование, указывающее сумму вращения, применяемого во время перехода. (требуемый)
Объявление
Swift
func targetTransform() -> CGAffineTransform
Objective C
- (CGAffineTransform)targetTransform
Возвращаемое значение
Аффинное преобразование, указывающее сумму вращения, применяемого к интерфейсу. Это преобразование является идентификационными данными, преобразовывают, когда не применяется никакое вращение; иначе, это - преобразование, применяющее 90 градусов,-90 градусов, или вращение на 180 градусов.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 8.0 и позже.
-
Ключи Вы используете для идентификации контроллеров представления, вовлеченных в переход.
Объявление
Swift
let UITransitionContextFromViewControllerKey: String let UITransitionContextToViewControllerKey: String
Objective C
NSString *const UITransitionContextFromViewControllerKey; NSString *const UITransitionContextToViewControllerKey;
Константы
-
UITransitionContextFromViewControllerKey
Идентифицирует контроллер представления, который видим в начале перехода (и в конце отмененного перехода). Этот контроллер представления обычно является тем, представляющим "для” просмотра контроллера, или является тем, заменяемым "для” просмотра контроллера.
Доступный в iOS 7.0 и позже.
-
UITransitionContextToViewControllerKey
Идентифицирует контроллер представления, который видим в конце завершенного перехода. Этот контроллер представления является представляемым тем.
Доступный в iOS 7.0 и позже.
-
-
Ключи Вы используете для идентификации представлений, вовлеченных в переход.
Объявление
Objective C
NSString *const UITransitionContextFromViewKey; NSString *const UITransitionContextToViewKey;
Константы
-
UITransitionContextFromViewKey
Идентифицирует представление, показанное в начале перехода (и в конце отмененного перехода). Это представление обычно является представлением контроллера представления представления.
Доступный в iOS 8.0 и позже.
-
UITransitionContextToViewKey
Идентифицирует представление, показанное в конце завершенного перехода. Это представление обычно является представленным представлением контроллера представления, но может также быть наследователем того представления.
Доступный в iOS 8.0 и позже.
-