UICollisionBehavior-动画效果:碰撞

翻译 2013年12月04日 17:51:30

1。碰撞

          需要确定边界线,使 增加了各动画行为(UIDynamicBehavior)的视图 在执行动画过程中 不能越界

                  translateReferenceBoundsIntoBoundary : YES (将参照视图的边界作为碰撞行为的侦测边界,即在参照视图中所有已增加了collisionBehavior的项在执行动画效果时,均不能越过参照视图的边界) 

                  - (void) addBoundaryWithIdentifier : (id<NSCopying>) identifier  fromPoint : (CGPoint) p1 toPoint : (CGPoint) p2 ;    // 自定义边界

2。collisionMode 碰撞模式

           UICollisionBehaviorModeItems :  between dynamic items

           UICollisionBehaviorModeBoundaries : between  every dynamic item and the boundaries

           UICollisionBehaviorModeEverything : above all , default value

3。<UICollisionBehaviorDelegate>

          myCollision.collisionDelegate = self ;

          - (void) collisionBehavior : (UICollisionBehavior*) paramBehavior  beganContactForItem : (id <UIDynamicItem>) paramItem  withBoundaryIdentifier : (id <NSCopying>) paramIdentifier  atPoint : (CGPoint) paramPoint    // 开始碰到边界时调用

          collisionBehavior : endedContactForItem : withBoundaryIdentifier : atPoint :   


e.g. 

         - (void) collisionBehavior : (UICollisionBehavior*) paramBehavior   beganContactForItem : (id <UIDynamicItem>) paramItem withBoundaryIdentifier : (id <NSCopying>) paramIdentifier  atPoint : (CGPoint) paramPoint  {
                NSString *identifier = (NSString *) paramIdentifier;  //边界标识符
                if ( [ identifier isEqualToString : @"boundaryIdentifier" ] ) {   //与之前定义的边界边识符相比较
                         [ UIView animateWithDuration : 1.0f  animations : ^{
                                  UIView *view = (UIView *) paramItem ;  //每个碰撞的视图
                                  view.backgroundColor = [ UIColor purpleColor ] ;
                                  view.alpha = 0.0f ;  //完全透明
                                  view.transform = CGAffineTransformMakeScale(2.0f, 2.0f) ;
                         } completion : ^(BOOL finished) {   //动画完成后
                                  UIView *view = (UIView *) paramItem;
                                  [ paramBehavior removeItem : paramItem ] ;
                                  [ view removeFromSuperview ] ;
                         } ] ;
                 }
    }    //最终效果:碰到边界时,活动视图会先变为purple色,然后慢慢消失(alpha=0.0)




动画特效七:碰撞动画

这一节讲述的动画效果是碰撞动画,就是模拟或者仿真现实物体的碰撞效果。先看看效果图。 动画效果分析: 1. 有两个形式一样的View(自己和对手),所以我们可以考虑直接封装一个View。 2. ...
  • sinat_27706697
  • sinat_27706697
  • 2015年07月23日 12:26
  • 1777

猫猫学iOS 之UIDynamic重力、弹性碰撞吸附等现象

猫猫分享,必须精品原创文章,欢迎转载。转载请注明:翟乃玉的博客 地址:http://blog.csdn.net/u013357243一:效果重力和碰撞 吸附现象 二:简介什么是UIDynamic...
  • u013357243
  • u013357243
  • 2015年08月25日 08:12
  • 4947

iOS-UIDynamic物理仿真-重力、碰撞

UIDynamicUIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架可以认为是一种物理引擎,能模拟和仿真现实生活中的物理现象如:重力、弹性碰撞等现象任何遵守了UIDynamic...
  • Cz090921
  • Cz090921
  • 2016年03月15日 00:17
  • 1077

Android,气泡动画。(碰撞算法的半成品)

一、前言本来想做一个类似window气泡屏保的动画效果。 奈何小球间的非对心碰撞公式没研究出来,对于我来说真的太复杂了,等公式给我研究差不多的时候,发现计算角度的问题也很复杂。博主表示高中的时候物理...
  • u010386612
  • u010386612
  • 2016年01月25日 14:48
  • 5212

iOS开发- 点击通知栏回到顶部的动画效果

你可能经常会用到点击通知栏回到顶部的功能,那这么动画效果怎么实现呢?一开始博主也被误导了,用基础动画来写,麻烦不说,效果还不好,后来才知道原来系统提供了相应的方法,网上给出了好几种用法,还有种错误的用...
  • CodingFire
  • CodingFire
  • 2016年09月13日 17:17
  • 1514

IOS开发-UIView之动画效果的实现方法(合集)

原文   http://www.cnblogs.com/GarveyCalvin/p/4193963.htm 前言:在开发APP中,我们会经常使用到动画效果。使用动画可以让我们的A...
  • Dlg1992
  • Dlg1992
  • 2016年04月18日 21:52
  • 162

IOS开发-UIView之动画效果的实现方法(一)

IOS开发-UIView之动画效果的实现方法(一)在开发APP中,我们会经常使用到动画效果。使用动画可以让我们的APP更酷更炫,最重要的是优化用户体验,但取决于动画的质量。像QQ、微信、新浪微博等AP...
  • sun356225041
  • sun356225041
  • 2015年12月30日 11:08
  • 192

IOS开发-UIView之动画效果的实现方法(合集)

IOS开发-UIView之动画效果的实现方法(合集)
  • ppdyhappy
  • ppdyhappy
  • 2016年05月11日 15:09
  • 408

IOS开发-UIView之动画效果的实现方法(合集)

转载自:http://www.tuicool.com/articles/BjMrQne 前言:在开发APP中,我们会经常使用到动画效果。使用动画可以让我们的APP更酷更炫,最重要的是优化用户体验...
  • ahou2468
  • ahou2468
  • 2017年01月18日 17:01
  • 156

iOS开发-UIView之动画效果的实现方法(合集)

前言:在开发APP中,我们会经常使用到动画效果。使用动画可以让我们的APP更酷更炫,最重要的是优化用户体验,但取决于动画的质量。像QQ、微信、新浪微博等APP,动画效果就很好了,至少我很喜欢它们的动画...
  • hatsuna
  • hatsuna
  • 2015年07月27日 10:51
  • 262
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UICollisionBehavior-动画效果:碰撞
举报原因:
原因补充:

(最多只允许输入30个字)