您的位置:首页 > 移动开发 > IOS开发

iOS开发 - 现实动画

2016-03-25 11:20 357 查看
物体下落 碰撞反弹demo

-(void)createDynamic{
//创建现实动画
_dynamicAnimator = [[UIDynamicAnimator alloc] initWithReferenceView:self.view];
//创建现实行为
_dynamicItemBehavior = [[UIDynamicItemBehavior alloc] initWithItems:nil];
_dynamicItemBehavior.elasticity = 0.1;

//设置弹力值 数值越大 弹力越大

_gravityBehavior = [[UIGravityBehavior alloc] initWithItems:nil];
_gravityBehavior.magnitude = 1;
//创建碰撞行为
_collisionBehavior = [[UICollisionBehavior alloc] initWithItems:nil];

//开启刚体碰撞
_collisionBehavior.translatesReferenceBoundsIntoBoundary = YES;
_collisionBehavior.collisionMode = UICollisionBehaviorModeEverything;

//将行为添加到现实动画中
[_dynamicAnimator addBehavior:_dynamicItemBehavior];
[_dynamicAnimator addBehavior:_gravityBehavior];
[_dynamicAnimator addBehavior:_collisionBehavior];
}

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{

int x = arc4random()%(int)self.view.frame.size.width;
int size = arc4random() % 50+1;
NSArray * imageArr = [NSArray arrayWithObjects:@"1",@"bird1",@"bluebird1",nil];

UIImageView * image = [[UIImageView alloc] initWithFrame:CGRectMake(x, 200, size, size)];
image.image = [UIImage imageNamed:imageArr[arc4random()%3]];
image.backgroundColor = [UIColor grayColor];
[self.view addSubview:image];

[_dynamicItemBehavior addItem:image];
[_gravityBehavior addItem:image];
[_collisionBehavior addItem:image];
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: