UIDynamicBehavior
Наследование
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 7.0 и позже.
Динамическое поведение присуждает поведенческую конфигурацию одной или более динамическим элементам для их участия в двумерной анимации.
Динамическим элементом является любой iOS или пользовательский объект, соответствующий UIDynamicItem
протокол. UIView
и UICollectionViewLayoutAttributes
классы реализуют этот протокол, запускающийся в iOS 7.0. Можно реализовать этот протокол для использования динамического аниматора с пользовательскими объектами в таких целях как реакция на вращение или изменения позиции, вычисленные аниматором — экземпляр UIDynamicAnimator
класс.
Этот родительский класс, UIDynamicBehavior
, наследован примитивными динамическими классами поведения UIAttachmentBehavior
, UICollisionBehavior
, UIGravityBehavior
, UIDynamicItemBehavior
, UIPushBehavior
, и UISnapBehavior
.
Можно разделить на подклассы UIDynamicBehavior
. При помощи addChildBehavior:
метод в экземпляре этого класса или в пользовательском подклассе, можно создать составные способы поведения собственного проекта.
Когда Вы разделяете на подклассы UIDynamicBehavior
, обычно необходимо обеспечивать один или несколько инициализаторов, вместе с другими методами обслуживания, такими как реализованные в iOS примитивные динамические способы поведения.
Для выполнения логики на шаг в динамической анимации обеспечьте блочный объект использование action
свойство.
Для доступа к динамическому аниматору, с которым связано динамическое поведение используйте dynamicAnimator
свойство. Для ответа на динамическое поведение, добавляемое к или удаленный от динамического аниматора, реализуйте willMoveToAnimator:
метод.
-
action
СвойствоБлок Вы хотите выполниться во время динамической анимации.
Объявление
Swift
var action: (() -> Void)!
Objective C
@property(nonatomic, copy) void (^action)(void)
Обсуждение
Динамический аниматор вызывает блок действия на каждом шаге анимации.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
См. также
-
Добавляет динамическое поведение, как дочерний элемент, к пользовательскому динамическому поведению.
Объявление
Swift
func addChildBehavior(_
behavior
: UIDynamicBehavior!)Objective C
- (void)addChildBehavior:(UIDynamicBehavior *)
behavior
Параметры
behavior
Динамическое поведение Вы хотите добавить как дочерний элемент.
Родительское поведение игнорирует Ваше использование этого метода если Вы:
Обеспечьте a
nil
значениеОбеспечьте экземпляр поведения, который Вы уже добавили к поведению
Обсуждение
Вызовите этот метод только на пользовательских подклассах
UIDynamicBehavior
класс.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
См. также
-
childBehaviors
СвойствоВозвращает массив динамических способов поведения, которые являются дочерними элементами пользовательского динамического поведения. (только для чтения)
Объявление
Swift
var childBehaviors: [AnyObject] { get }
Objective C
@property(nonatomic, readonly, copy) NSArray *childBehaviors
Обсуждение
Только пользовательские подклассы класса могут иметь дочерние способы поведения.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
Удаляет дочернее динамическое поведение из пользовательского динамического поведения.
Объявление
Swift
func removeChildBehavior(_
behavior
: UIDynamicBehavior)Objective C
- (void)removeChildBehavior:(UIDynamicBehavior *)
behavior
Параметры
behavior
Дочернее динамическое поведение Вы хотите удалить.
Родительское поведение игнорирует Ваше использование этого метода если Вы:
Обеспечьте a
nil
значениеОбеспечьте экземпляр поведения, который не является дочерним элементом родительского поведения
Обсуждение
Этот метод применяется только к пользовательским подклассам
UIDynamicBehavior
класс. Бетон UIKit динамические способы поведения (такие как экземплярUICollisionBehavior
) не может иметь дочерних способов поведения.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
См. также
-
dynamicAnimator
СвойствоДинамический аниматор, с которым связано динамическое поведение. (только для чтения)
Объявление
Swift
var dynamicAnimator: UIDynamicAnimator? { get }
Objective C
@property(nonatomic, readonly) UIDynamicAnimator *dynamicAnimator
Обсуждение
Если динамическое поведение не связано с динамическим аниматором, значение этого свойства
nil
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.
-
Вызванный, когда динамическое поведение добавлено к или удалено из, динамический аниматор.
Объявление
Swift
func willMoveToAnimator(_
dynamicAnimator
: UIDynamicAnimator?)Objective C
- (void)willMoveToAnimator:(UIDynamicAnimator *)
dynamicAnimator
Параметры
dynamicAnimator
Динамический аниматор, что поведение добавляется к, или
nil
будучи удаленным от аниматора.Обсуждение
Используйте этот метод в качестве точки переопределения для реакции на изменения в дереве поведения Динамики UIKit, включающие динамическое поведение.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 7.0 и позже.