UIDynamicAnimator 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
协调一组 IUIDynamicItem和 UIDynamicBehavior的 UIKit Dynamics。
[Foundation.Register("UIDynamicAnimator", true)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 7, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public class UIDynamicAnimator : Foundation.NSObject, System.Collections.Generic.IEnumerable<UIKit.UIDynamicBehavior>
type UIDynamicAnimator = class
inherit NSObject
interface seq<UIDynamicBehavior>
interface IEnumerable
- 继承
- 属性
- 实现
注解
动态动画器负责协调附加到 UIView 的物理模拟。 这些物理模拟作为 类的 UIDynamicBehavior 子类实现,包括重力、碰撞检测、附加、贴靠、力和控制项属性的各种预定义模拟。
UIDynamicAnimator 它提供用于管理附加到 UIView 的物理模拟的整体上下文。 此外,它还定义动态的坐标系,并包装基础动画引擎。 最后,它会跟踪 UIDynamicBehavior和 IUIDynamicItem ,用于定义需要动态的特定行为和项。
向动态动画器添加行为将导致该行为作为 UIKit 运行的物理模拟的一部分运行。 若要停止运行 (的行为并成为模拟) 的一部分,必须从动态动画器中删除该行为, (使用 RemoveBehavior(UIDynamicBehavior) 或 RemoveAllBehaviors()。
应用程序开发人员负责创建可由 UI Dynamics 的物理特性行为解决的配置。
以下示例演示如何向动画器添加几个行为:
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
// Create a dynamic animator for the specified UIView
// in this case, the property "View" of UIViewController
//
animator = new UIDynamicAnimator (View);
// Creates two dynamic behaviors
// Create a gravity behavior that operates on the `square' UIView
var gravityBehavior = new UIGravityBehavior (square);
// Create a collision behavior that operates on the same `square' UIVew
var collisionBehavior = new UICollisionBehavior (square) {
TranslatesReferenceBoundsIntoBoundary = true
};
// Detect collision, hook up to the events raised by that behavior
collisionBehavior.BeganBoundaryContact += BeganContact;
collisionBehavior.EndedBoundaryContact += EndedContact;
// Add the two behaviors to the dynamic animator
animator.AddBehaviors (gravityBehavior, collisionBehavior);
// The simulation will start running
}
以下是扩展 类的UIDynamicBehavior预定义行为:UIAttachmentBehavior、、UICollisionBehaviorUIDynamicItemBehavior、 UIGravityBehaviorUIPushBehavior 和 UISnapBehavior。
构造函数
UIDynamicAnimator() |
默认构造函数,初始化此类的新实例。 |
UIDynamicAnimator(IntPtr) |
创建非托管对象的托管表示形式时使用的构造函数;由运行时调用。 |
UIDynamicAnimator(NSObjectFlag) |
在派生类上调用 的构造函数,以跳过初始化并仅分配 对象。 |
UIDynamicAnimator(UICollectionViewLayout) |
协调一组 IUIDynamicItem和 UIDynamicBehavior的 UIKit Dynamics。 |
UIDynamicAnimator(UIView) |
协调一组 IUIDynamicItem和 UIDynamicBehavior的 UIKit Dynamics。 |
属性
Behaviors |
包含此 UIDynamicAnimator 上运行的当前行为列表的数组。 |
Class |
协调一组 IUIDynamicItem和 UIDynamicBehavior的 UIKit Dynamics。 (继承自 NSObject) |
ClassHandle |
此类的句柄。 |
DebugDescription |
此对象的开发人员有意义的说明。 (继承自 NSObject) |
Delegate |
充当类委托的 UIKit.IUIDynamicAnimatorDelegate 模型类的实例。 |
Description |
对象的说明,即 ToString 的 Objective-C 版本。 (继承自 NSObject) |
ElapsedTime |
UIDynamicAnimator 开始运行以来的时间间隔。 |
Handle |
处理指向非托管对象表示形式的 (指针) 。 (继承自 NSObject) |
IsDirectBinding |
协调一组 IUIDynamicItem和 UIDynamicBehavior的 UIKit Dynamics。 (继承自 NSObject) |
IsProxy |
协调一组 IUIDynamicItem和 UIDynamicBehavior的 UIKit Dynamics。 (继承自 NSObject) |
ReferenceView |
初始化 UIDynamicAnimator 时使用的 UIView。 只读。 |
RetainCount |
返回对象的当前 Objective-C 保留计数。 (继承自 NSObject) |
Running |
UIDynamicAnimator 是否正在运行。 只读。 |
Self |
协调一组 IUIDynamicItem和 UIDynamicBehavior的 UIKit Dynamics。 (继承自 NSObject) |
Superclass |
协调一组 IUIDynamicItem和 UIDynamicBehavior的 UIKit Dynamics。 (继承自 NSObject) |
SuperHandle |
用于表示此 NSObject 基类中方法的句柄。 (继承自 NSObject) |
WeakDelegate |
可以响应此类型的委托协议的对象 |
Zone |
协调一组 IUIDynamicItem和 UIDynamicBehavior的 UIKit Dynamics。 (继承自 NSObject) |
方法
显式接口实现
IEnumerable.GetEnumerator() |
通过枚举器检索行为。 |
IEnumerable<UIDynamicBehavior>.GetEnumerator() |
返回一个枚举器,该枚举器循环访问动画器中的动态行为。 |
扩展方法
GetDebugDescription(INSObjectProtocol) |
协调一组 IUIDynamicItem和 UIDynamicBehavior的 UIKit Dynamics。 |
GetAccessibilityCustomRotors(NSObject) |
获取适用于 |
SetAccessibilityCustomRotors(NSObject, UIAccessibilityCustomRotor[]) |
设置适用于 |