zoukankan      html  css  js  c++  java
  • iOS7 UIKit动力学-重力特性UIGravityBehavior

    续文

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

    先说下UIDynamicAnimator类,全部仿真行为的父类,这个给我的感觉就跟上先问文一样。或者像是加入手势或者加入视图的感觉,详细往下细说。

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

    重力特性

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

    在初中的时候,我们普遍都接触过牛顿的重力加速度,也就是自由落体运动。(没学过自己百度,补充下),在UIDynamicAnimator的这个类的帮助下,能够帮助我们实现一个视图对象(UIView)能够像高处掉落的苹果一样,加速移动。先创建一个UIDynamicAnimator对象,然后把创建的对象加入到UIDynamicAnimator的对象中。加入一个重力加速度的属性。就跟加入手势是一样的感觉。

    .h

    #import <UIKit/UIKit.h>
    
    @interface ViewController : UIViewController
    {
        UIDynamicAnimator * _animator;
        UIGravityBehavior * _gravity;
    }
    @end

    .m

    - (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];
    }
    

    执行一下。看看效果吧。

    点击关注我,很多其它精彩内容!。!

    群号:336146073

  • 相关阅读:
    oracle“记录被另一个用户锁住”
    Oracle CASE WHEN 用法介绍
    拥有机器人的人生会是怎样的体验?
    需求那么多,核心需求都从哪里来?
    一文读懂互联网及电商逻辑
    读书:《敏捷产品--不确定性的思维革命》
    读书:《超越感觉:批判性思考指南》一
    618啦,你的钱包又被盯上啦!
    产品经理如何开启上帝视角?
    我的产品经理价值观
  • 原文地址:https://www.cnblogs.com/yfceshi/p/7323300.html
Copyright © 2011-2022 走看看