1.继承链:NSObject

2.可以遵守UIDynamicItem协议

3.为了能够使用动态行为,你需要使用这些类创建的对象: UIAttachmentBehaviorUICollisionBehaviorUIDynamicItemBehaviorUIGravityBehaviorUIPushBehavior, and UISnapBehavior.

4.初始化和管理动态动画

    (1)- (instancetype)initWithReferenceView:(UIView *)view  :为一个视图初始化动态对象

    (2)- (instancetype)initWithCollectionViewLayout:(UICollectionViewLayout *)layout  :使用一个指定的collection视图布局来初始化动态动画对象

    (3)- (NSArray<id<UIDynamicItem>> *)itemsInRect:(CGRect)rect  :返回一个指定矩形内的动态动画item

    (4)- (void)addBehavior:(UIDynamicBehavior *)behavior  :为动态动画添加行为、如重力、碰撞

    (5)- (void)removeBehavior:(UIDynamicBehavior *)behavior  :为动态动画删除指定的行为

    (6)- (void)removeAllBehaviors  :为动态动画删除所有的行为

5.读取动态动画的状态

    (1)- (NSTimeInterval)elapsedTime  :返回动态动画开始的时间

    (2)@property(nonatomic, readonly, getter=isRunning) BOOL running  :是否让该动态动画运行

    (3)@property(nonatomic, readonly, copy) NSArray<__kindof UIDynamicBehavior *> *behaviors  :返回该动态动画所有的行为

    (4)@property(nonatomic, readonly) UIView*referenceView  :返回该动态动画参考的视图,就是初始化的时候用的是哪个视图

    (5)@property(nonatomic, weak) id< UIDynamicAnimatorDelegate> delegate  :设置动态动画的委托

    (6)- (void)updateItemUsingCurrentState:(id<UIDynamicItem>)item  :读取当前的状态来进行更新动态动画

6.储藏添加视图

    (1)- (UICollectionViewLayoutAttributes *)layoutAttributesForCellAtIndexPath:(NSIndexPath *)indexPath  :返回指定索引的单元布局属性

    (2)- (UICollectionViewLayoutAttributes *)layoutAttributesForDecorationViewOfKind:(NSString*)decorationViewKind
                                                                  atIndexPath:(NSIndexPath*)indexPath  :

    (3)- (UICollectionViewLayoutAttributes *)layoutAttributesForSupplementaryViewOfKind:(NSString *)kind
                                                                     atIndexPath:(NSIndexPath*)indexPath  :

UIKit框架之UIDynamicAnimator的更多相关文章

  1. iOS开发概述UIkit动力学,讲述UIKit的Dynamic特性,UIkit动力学是UIkit框架中模拟真实世界的一些特性。

    转发:http://my.oschina.net/u/1378445/blog/335014 iOS UIKit动力学 Dynamics UIAttachmentBehavior 实现iMessage ...

  2. Swift - 重写UIKit框架类的init初始化方法(以UITabBarController为例)

    原来写了篇文章讲UITabBarController的用法,当时是从UIViewController跳转到UITabBarController页面,代码如下: 1 self.presentViewCo ...

  3. UIKit框架

    在今后的应用程序构建中,会陆续使用各式各样的控件,因此UIKit框架的引入是必不可少的! 一.简介 UIKitk框架提供一系列的Class(类)来建立和管理iPhone OS应用程序的用户界面接口.应 ...

  4. iOS学习32之UIKit框架-可视化编程-XIB

    1. Interface Builder 可视化编程 1> 概述 GUI : 图形用户界面(Graphical User Interface, 简称GUI, 又称图形化界面) 是指采用图形方式显 ...

  5. 基础框架Fundation和UIkit框架的定义和使用

    Foundation 框架为所有应用程序提供基本的系统服务 您的应用程序以及 UIKit 和其他框架,都建立在 Foundation 框架的基础结构之上.Foundation 框架提供许多基本的对象类 ...

  6. iOS开发UIKit框架-可视化编程-XIB

    1. Interface Builder 可视化编程 1> 概述 GUI : 图形用户界面(Graphical User Interface, 简称GUI, 又称图形化界面) 是指采用图形方式显 ...

  7. 79、iOS 的Cocoa框架、Foundation框架以及UIKit框架

    Cocoa框架是iOS应用程序的基础 1. Cocoa是什么? Cocoa是 OS X和ios 操作系统的程序的运行环境. 是什么因素使一个程序成为Cocoa程序呢?不是编程语言,因为在Cocoa开发 ...

  8. UIKit 框架之UIView二

    下面这些都是UIView一些基本的东西,具体的可以参考UIKit 框架之UIView一博客 一.自定义一个View // // MyView.m // UIView // // Created by ...

  9. UIKit 框架之Bar、Controller

    UIKit框架中有各种Bar,UITabBar.UINavigationBar.UIToolbar.Bar对应的就有一些Item,tabBarItem.navigationItem.toolbarIt ...

随机推荐

  1. Hexo+Github 高逼格个人博客搭建指南(准备篇)

    git 下载并安装git 进入git下载页面,下载合适的版本,并安装.一路 Next ,到了 Select Components 界面,勾选 Git Bash Here 和 Git GUI Here. ...

  2. Android实现圆形图片

     情景再现: 写Android程序也有一段时间了,今天突然被问怎么实现一个圆形图片,很多app图像是圆形的.但是用户上传的图像可不是圆的,所以问题就来了,需要我们代码实现圆形图片.但是大脑飞转想到第三 ...

  3. VC++使用Pro*CC++

    几种数据库访问技术的比较 由上所述, Visual C++ 通过以上方法都可以访问Oracle 数据 库, 但是上述方法各有优缺点.ODBC 出现得比较早, 几乎支持所 有的关系型数据库, 而且有MF ...

  4. less中的减号处理

    很奇怪,less中对减号似乎没有特别说明,很容易让人无用. @div1Width:500; @div2Width:200px; .div3cls { width:@div1Width-@div2Wid ...

  5. VHDL的参数写在一个vhd文件里

    1 参数文件top_pkg.vhd

  6. C++ 在容器中存放函数指针

    注意,对一般c++ 98标准编译器而言,容器泛型模板是不支持直接存放函数指针的.需要typedef将函数指针重命名. 比如,一个void返回值参数也为void的函数指针,需要 typedef void ...

  7. Javascript学习笔记1 javascript的特点

    ..对于网页而言,Javascript无处不在,对于英语不好的人它简直是噩梦般的存在,但形式所逼,今天开始着手学习!希望自己能坚持下去.从什么地方着手,我的目标是从大处着眼,从应用着眼,不抠细节,反正 ...

  8. 夕甲甲——孔乙己之C++版

    欧欧匹代码的格局,是和别的编程模式不同的:首先要有一个构造函数:基类里只定义了函数的形式,可以随时通过派生增加不同的实现.那些程序员们,每每学会了继承和多态,便可以接一个项目,——这是十年前的事,现在 ...

  9. JAVA中的类和接口

    1.类: 类是具有相同属性和方法的一组对象的集合,它为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和方法两个主要部分.在面向对象的编程语言中,类是一个独立的程序单位,它应该有一个类名并包括属 ...

  10. 忠告初学者学习Linux系统的8点建议

    导读 新手或者说即将要入坑的小伙伴们,常常在QQ群或者在Linux论坛问一些问题,不过,其中大多数的问题都是很基础的.例如:如何给添加的用户归属用户组,复制整个文件到另一个目录下面,磁盘合理划分,甚至 ...