UIGravityBehavior的简单使用
来源:互联网 发布:零售行业数据分析 编辑:程序博客网 时间:2024/05/16 14:14
#import "ViewController.h"
#import "PushView.h"
@interface ViewController ()
@property (weak, nonatomic) UIImageView * imageView1;
@property (strong,nonatomic) UIDynamicAnimator * animator;
@end
@implementation ViewController
- (void)viewDidLoad {
[superviewDidLoad];
[selfsetupViews];
}
- (void)setupViews{
UIImageView * imageView1 = [[UIImageViewalloc]init];
imageView1.backgroundColor = [UIColorredColor];
imageView1.frame = CGRectMake(50, 100, 100, 100);
imageView1.layer.masksToBounds =YES;
imageView1.layer.cornerRadius = imageView1.frame.size.width/2;
imageView1.userInteractionEnabled =YES;
_imageView1 = imageView1;
[self.viewaddSubview:imageView1];
}
-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
CGPoint point = [touches.anyObjectlocationInView:self.view];
self.imageView1.center = point;
[self.animatorremoveAllBehaviors];
UIGravityBehavior *gravity = [[UIGravityBehavioralloc] initWithItems:@[self.imageView1]];
//默认是1.570796
NSLog(@"angle %f",gravity.angle);
//默认是1.0
gravity.magnitude = 10.0;
NSLog(@"magnitude %f",gravity.magnitude);
//重力的方向默认是(0,1)改变angle 或者magnitude 也能改变这个值
gravity.gravityDirection = CGVectorMake(0, 1);
[self.animatoraddBehavior:gravity];
//加一个UICollisionBehavior就不会出现在屏幕外面
UICollisionBehavior * collision = [[UICollisionBehavioralloc]initWithItems:@[self.imageView1]];
collision.translatesReferenceBoundsIntoBoundary =YES;
[self.animatoraddBehavior:collision];
}
- (UIDynamicAnimator *)animator{
if (_animator ==nil) {
_animator = [[UIDynamicAnimatoralloc]initWithReferenceView:self.view];
}
return_animator;
}
@end
- UIGravityBehavior的简单使用
- UIGravityBehavior的属性关系
- 动力效果 UIGravityBehavior- UICollisionBehavior- UIDynamicItemBehavior
- UIGravityBehavior-动画效果:重力自由落体
- iOS7 UIKit动力学-重力特性UIGravityBehavior
- iOS7 UIKit动力学-重力特性UIGravityBehavior
- iOS7 UIKit动力学-重力特性UIGravityBehavior
- iOS7 UIKit动力学-重力特性UIGravityBehavior
- iOS7 UIKit动力学-重力特性UIGravityBehavior
- 简单易懂的使用
- ant的简单使用
- Log4j的简单使用
- TCPDUMP的简单使用
- IComparer的简单使用
- TreeView的简单使用
- CListCtrl的简单使用
- Rose的简单使用
- OpenSSL的简单使用
- POJ-1251 Jungle Roads
- 10004---linux下vi命令大全
- nginx 域名跳转一例~~~(rewrite、proxy)
- codeforces 626f
- java中什么是bridge method(桥接方法)
- UIGravityBehavior的简单使用
- 为什么linux kernel默认的页面大小是4K,而不是4M或8M?(转载一篇文章)
- ThreadLocal在spring框架中的作用
- Appium Python API 中文版 By-HZJ
- Android 锁屏显示和屏幕解锁
- 【项目管理】之maven+nexus环境搭建
- HDOJ-1978 How many ways
- 如何开发一个隐藏源代码的library工程。
- How to install Mod_Security on Nginx