Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы QuartzCore ссылка класса CAKeyframeAnimation

Опции
Развертывание Target:

На этой странице
Язык:

CAKeyframeAnimation

CAKeyframeAnimation класс обеспечивает возможности анимации ключевых кадров расположенного на слое объекта. Вы создаете CAKeyframeAnimation объект с помощью наследованного animationWithKeyPath: метод, указывая ключевой путь свойства, которое Вы хотите анимировать на уровне. Можно тогда указать значения ключевого кадра для использования для управления поведением синхронизации и анимации.

Для большинства типов анимаций Вы указываете значения ключевого кадра с помощью values и keyTimes свойства. Во время анимации Базовая Анимация генерирует промежуточные значения путем интерполяции между значениями, которые Вы обеспечиваете. При анимации значения, которое является координатной точкой, такой как позиция уровня, можно указать a path для той точки для следования вместо отдельных значений. Следованием анимации управляет информация синхронизации, которую Вы обеспечиваете.

Наследование


Оператор импорта


Swift

import QuartzCore

Objective C

@import QuartzCore;

Доступность


Доступный в OS X v10.5 и позже.
  • Массив объектов, указывающих значения ключевого кадра для использования для анимации.

    Объявление

    Swift

    var values: [AnyObject]!

    Objective C

    @property(copy) NSArray *values

    Обсуждение

    Значения ключевого кадра представляют значения, через которые должна продолжиться анимация. Время, в которое данное значение ключевого кадра применяется к уровню, зависит от синхронизации анимации, которой управляют calculationMode, keyTimes, и timingFunctions свойства. Ценности между ключевыми кадрами созданы с помощью интерполяции, если режим вычисления не установлен в kCAAnimationDiscrete.

    В зависимости от типа свойства Вы, возможно, должны обернуть значения в этот массив с NSNumber из NSValue объект. Для некоторых Базовых Графических типов данных Вы, возможно, также должны бросить их к id прежде, чем добавить их к массиву.

    Значения в этом свойстве используются только если значение в path свойство nil.

    Оператор импорта

    Objective C

    @import QuartzCore;

    Swift

    import QuartzCore

    Доступность

    Доступный в OS X v10.5 и позже.

  • путь путь Свойство

    Путь для основанного на точке свойства для следования.

    Объявление

    Swift

    var path: CGPath!

    Objective C

    @property CGPathRef path

    Обсуждение

    Для свойств слоя, содержащих a CGPoint тип данных, объект контуров, который Вы присваиваете этому свойству, определяет значения для того свойства за продолжительность анимации. Если Вы указываете значение для этого свойства, каких-либо данных в values свойство проигнорировано.

    Любые значения синхронизации, которые Вы указываете для анимации, применяются к точкам, используемым для создания пути. Пути могут содержать точки, определяющие перемещение - к, строка - к, или кривая - к сегментам. Конечная точка строки - к или кривая - для сегментации определяет значение ключевого кадра. Все другие точки между тем значением конца и предыдущим значением тогда интерполированы. Перемещение - к сегментам не определяет отдельные значения ключевого кадра.

    То, как анимация продолжается вдоль пути, зависит от значения в calculationMode свойство. Для достижения гладкой, постоянной скоростной анимации вдоль пути установите calculationMode свойство к kCAAnimationPaced или kCAAnimationCubicPaced. Для создания анимации, где значение расположения спрыгивает с точки ключевого кадра к точке ключевого кадра (без промежуточной интерполяции) используйте kCAAnimationDiscrete значение. Для анимации вдоль пути путем интерполяции значений между точками используйте kCAAnimationLinear значение.

    Оператор импорта

    Objective C

    @import QuartzCore;

    Swift

    import QuartzCore

    Доступность

    Доступный в OS X v10.5 и позже.

    См. также

    rotationMode

  • keyTimes keyTimes Свойство

    Дополнительный массив NSNumber объекты, определяющие время, в которое можно применить данный сегмент ключевого кадра.

    Объявление

    Swift

    var keyTimes: [AnyObject]!

    Objective C

    @property(copy) NSArray *keyTimes

    Обсуждение

    Каждое значение в массиве является числом с плавающей точкой между 0.0 и 1.0 это определяет момент времени (указанный как часть общей продолжительности анимации), в котором можно применить соответствующее значение ключевого кадра. Каждое последовательное значение в массиве должно быть больше, чем или равным, предыдущее значение. Обычно, число элементов в массиве должно соответствовать число элементов в values свойство или число контрольных точек в path свойство. Если они не делают, синхронизация Вашей анимации не могла бы быть тем, что Вы ожидаете.

    Надлежащие значения для включения в массив зависят от calculationMode свойство.

    • Если calculationMode установлен в kCAAnimationLinear или kCAAnimationCubic, первое значение в массиве должно быть 0.0 и последнее значение должно быть 1.0. Все промежуточные значения представляют моменты времени между запуском и время окончания.

    • Если calculationMode установлен в kCAAnimationDiscrete, первое значение в массиве должно быть 0.0 и последнее значение должно быть 1.0. Массив должен иметь еще одну запись, чем появляется в массиве значений. Например, если существует два значения, должно быть три ключевых раза.

    • Если calculationMode установлен в kCAAnimationPaced или kCAAnimationCubicPaced, значения в этом свойстве проигнорированы.

    Если значения в этом массиве являются недопустимыми или несоответствующими для текущего режима вычисления, они проигнорированы.

    Оператор импорта

    Objective C

    @import QuartzCore;

    Swift

    import QuartzCore

    Доступность

    Доступный в OS X v10.5 и позже.

  • timingFunctions timingFunctions Свойство

    Дополнительный массив CAMediaTimingFunction объекты, определяющие следование для каждого сегмента ключевого кадра.

    Объявление

    Swift

    var timingFunctions: [AnyObject]!

    Objective C

    @property(copy) NSArray *timingFunctions

    Обсуждение

    Можно использовать этот массив для применения простоты - в, простоты или пользовательских кривых синхронизации к точкам, находящимся между двумя значениями ключевого кадра. Если число ключевых кадров в свойстве значений является n, то это свойство должно содержать n-1 объекты.

    Если Вы обеспечиваете информацию синхронизации в keyTimes свойство, синхронизация функционирует, Вы указываете, что использование этого свойства далее изменяет синхронизацию между теми значениями. Если Вы не присваиваете значение keyTimes свойство, функции синхронизации изменяют синхронизацию значения по умолчанию, предоставленную объектом Animation.

    Если Вы также указываете, что синхронизация функционирует в объекте Animation timingFunction свойство, та функция применяется сначала сопровождаемая функцией синхронизации для определенного сегмента ключевого кадра.

    Для получения информации о том, как создать функцию синхронизации, посмотрите Ссылку класса CAMediaTimingFunction.

    Оператор импорта

    Objective C

    @import QuartzCore;

    Swift

    import QuartzCore

    Доступность

    Доступный в OS X v10.5 и позже.

  • calculationMode calculationMode Свойство

    Указывает, как промежуточные значения ключевого кадра вычисляются получателем.

    Объявление

    Swift

    var calculationMode: String!

    Objective C

    @property(copy) NSString *calculationMode

    Обсуждение

    Возможные значения описаны в “Value calculation modes”. Значение по умолчанию этого свойства kCAAnimationLinear.

    Оператор импорта

    Objective C

    @import QuartzCore;

    Swift

    import QuartzCore

    Доступность

    Доступный в OS X v10.5 и позже.

  • rotationMode rotationMode Свойство

    Определяет, вращается ли анимация объектов вдоль пути для соответствия касательной пути.

    Объявление

    Swift

    var rotationMode: String!

    Objective C

    @property(copy) NSString *rotationMode

    Обсуждение

    Возможные значения для этого свойства описаны в “Rotation Mode Values”. Значение по умолчанию этого свойства nil, который указывает, что объекты не должны вращаться для следования за путем.

    Эффект установки этого свойства к не -nil оцените, когда никакой объект контуров не предоставляется, не определено.

    Оператор импорта

    Objective C

    @import QuartzCore;

    Swift

    import QuartzCore

    Доступность

    Доступный в OS X v10.5 и позже.

    См. также

    путь

  • tensionValues tensionValues Свойство

    Массив NSNumber объекты, определяющие плотность кривой.

    Объявление

    Swift

    var tensionValues: [AnyObject]!

    Objective C

    @property(copy) NSArray *tensionValues

    Обсуждение

    Это свойство используется только для кубических режимов вычисления. В то время как отрицательные величины указывают кривую бездельника, положительные значения указывают более трудную кривую. Первое значение определяет поведение касательной к первой контрольной точке, второе значение управляет касательными второй точки и т.д. Если Вы не указываете значение для данной контрольной точки, значение 0 используется.

    Оператор импорта

    Objective C

    @import QuartzCore;

    Swift

    import QuartzCore

    Доступность

    Доступный в OS X v10.7 и позже.

  • Массив NSNumber объекты, определяющие резкость углов кривой синхронизации.

    Объявление

    Swift

    var continuityValues: [AnyObject]!

    Objective C

    @property(copy) NSArray *continuityValues

    Обсуждение

    Это свойство используется только для кубических режимов вычисления. В то время как отрицательные величины создают инвертированные углы, положительные значения приводят к более резким углам. Первое значение определяет поведение касательной к первой контрольной точке, второе значение управляет касательными второй точки и т.д. Если Вы не указываете значение для данной контрольной точки, значение 0 используется.

    Оператор импорта

    Objective C

    @import QuartzCore;

    Swift

    import QuartzCore

    Доступность

    Доступный в OS X v10.7 и позже.

  • biasValues biasValues Свойство

    Массив NSNumber объекты, определяющие позицию кривой относительно контрольной точки.

    Объявление

    Swift

    var biasValues: [AnyObject]!

    Objective C

    @property(copy) NSArray *biasValues

    Обсуждение

    Это свойство используется только для кубических режимов вычисления. Положительные значения перемещают кривую перед контрольной точкой, в то время как отрицательные величины перемещают его после контрольной точки. Первое значение определяет поведение касательной к первой контрольной точке, второе значение управляет касательными второй точки и т.д. Если Вы не указываете значение для данной контрольной точки, значение 0 используется.

    Оператор импорта

    Objective C

    @import QuartzCore;

    Swift

    import QuartzCore

    Доступность

    Доступный в OS X v10.7 и позже.

  • Эти константы используются rotationMode свойство.

    Объявление

    Swift

    let kCAAnimationRotateAuto: NSString! let kCAAnimationRotateAutoReverse: NSString!

    Objective C

    NSString * const kCAAnimationRotateAuto NSString * const kCAAnimationRotateAutoReverse

    Константы

    • kCAAnimationRotateAuto

      kCAAnimationRotateAuto

      Объекты перемещаются на касательной в путь.

      Доступный в OS X v10.5 и позже.

    • kCAAnimationRotateAutoReverse

      kCAAnimationRotateAutoReverse

      Объекты перемещаются в касательной на 180 градусов в путь.

      Доступный в OS X v10.5 и позже.

  • Эти константы используются calculationMode свойство.

    Объявление

    Swift

    let kCAAnimationLinear: NSString! let kCAAnimationDiscrete: NSString! let kCAAnimationPaced: NSString! let kCAAnimationCubic: NSString! let kCAAnimationCubicPaced: NSString!

    Objective C

    NSString * const kCAAnimationLinear; NSString * const kCAAnimationDiscrete; NSString * const kCAAnimationPaced; NSString * const kCAAnimationCubic; NSString * const kCAAnimationCubicPaced;

    Константы

    • kCAAnimationLinear

      kCAAnimationLinear

      Простое линейное вычисление между значениями ключевого кадра.

      Доступный в OS X v10.5 и позже.

    • kCAAnimationDiscrete

      kCAAnimationDiscrete

      Каждое значение ключевого кадра используется, в свою очередь, никакие интерполированные значения не вычисляются.

      Доступный в OS X v10.5 и позже.

    • kCAAnimationPaced

      kCAAnimationPaced

      Значения ключевого кадра интерполированы для создания даже темп в течение анимации.

      Доступный в OS X v10.5 и позже.

    • kCAAnimationCubic

      kCAAnimationCubic

      Промежуточные кадры вычислены с помощью шлица Catmull-Rom, проходящего через ключевые кадры. Можно скорректировать форму шлица путем указания дополнительного набора силы, непрерывности, и сместить значения, изменяющие шлиц с помощью стандартной формы Kochanek-Bartels.

      Доступный в OS X v10.7 и позже.

    • kCAAnimationCubicPaced

      kCAAnimationCubicPaced

      Промежуточные кадры вычислены с помощью кубической схемы, но keyTimes и timingFunctions свойства анимации проигнорированы. Вместо этого синхронизирующие параметры вычисляются неявно, чтобы дать анимации постоянную скорость.

      Доступный в OS X v10.7 и позже.