iOS7 UIKit动力学-重力特性UIGravityBehavior

续文html

在iOS7中事实上新加了很是多新的特性。以前看过,也了解过一些新的内容。如新的动力学特性,TextKit的图文混排,还有本身定义的动画跳转等。那段时间也比較忙,没时间整理。现在项目也弄完了,打算在学习旧的东西的同一时候好好的区了解这些新的内容。app

先说下UIDynamicAnimator类,所有仿真行为的父类,这个给个人感受就跟上先问文同样。或者像是加入手势或者加入视图的感受,详细往下细说。post

UIDynamicBehavior:仿真行为,是动力学行为的父类,主要的动力学行为类UIGravityBehavior、UICollisionBehavior、UIAttachmentBehavior、UISnapBehavior、UIPushBehavior以及UIDynamicItemBehavior均继承自该父类

重力特性学习

这里咱们主要先讲重力特性,先随口说说,之前有人说三个苹果改变了世界,一个给了乔布斯。一个给了图灵,一个给了牛顿。动画

在初中的时候,咱们广泛都接触过牛顿的重力加速度,也就是自由落体运动。(没学过本身百度,补充下),在UIDynamicAnimator的这个类的帮助下,可以帮助咱们实现一个视图对象(UIView)可以像高处掉落的苹果同样,加速移动。先建立一个UIDynamicAnimator对象,而后把建立的对象加入到UIDynamicAnimator的对象中。加入一个重力加速度的属性。就跟加入手势是同样的感受。spa

.hcode

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController
{
    UIDynamicAnimator * _animator;
    UIGravityBehavior * _gravity;
}
@end

.mhtm

- (void)viewDidLoad
{
    [super viewDidLoad];
    UIView * apple = [[UIView alloc] initWithFrame:CGRectMake(40,40, 40, 40)];
    apple.backgroundColor = [UIColor redColor];
    [self.view addSubview:apple];
    
    _animator = [[UIDynamicAnimator alloc] initWithReferenceView:self.view];
    _gravity = [[UIGravityBehavior alloc] initWithItems:@[apple]];
    [_animator addBehavior:_gravity];
}

执行一下。看看效果吧。对象

点击关注我,不少其它精彩内容!。!blog

群号:336146073

相关文章
相关标签/搜索