iOS开发点赞动画效果

释放双眼,带上耳机,听听看~!

点赞我们都知道,最简单的就是通过Bool变量或者selected来判断是否选中,然后替换原来的图片,要想有个简单的动画效果,前面博主写过Core Animation里的关键帧动画,这里就用关键帧动画CAKeyframeAnimation来做,只需要在按钮响应方法中添加以下代码,同时替换图片:

 if (_isSelected == NO) {
_isSelected = YES;
[likeBtn setBackgroundImage:[UIImage imageNamed:@"detail_unup_group"] forState:UIControlStateNormal];
}
else
{
_isSelected = NO;
[likeBtn setBackgroundImage:[UIImage imageNamed:@"detail_up_group"] forState:UIControlStateNormal];
}
CAKeyframeAnimation * animation;
animation = [CAKeyframeAnimation animationWithKeyPath:@"transform"];
animation.duration = 0.5;
animation.delegate = self;
animation.removedOnCompletion = YES;
animation.fillMode = kCAFillModeForwards;
NSMutableArray *values = [NSMutableArray array];
[values addObject:[NSValue valueWithCATransform3D:CATransform3DMakeScale(0.1, 0.1, 1.0)]];
[values addObject:[NSValue valueWithCATransform3D:CATransform3DMakeScale(1.1, 1.1, 1.0)]];
[values addObject:[NSValue valueWithCATransform3D:CATransform3DMakeScale(0.9, 0.9, 0.9)]];
[values addObject:[NSValue valueWithCATransform3D:CATransform3DMakeScale(1.0, 1.0, 1.0)]];
animation.values = values;
[likeBtn.layer addAnimation:animation forKey:nil];

是不是很简单,自己找张图片试试吧,Demo就不放了。
还可以加上爆炸的烟花效果,使用CAEmitterLayer,基本使用前面有介绍,但是具体的掌控比较复杂,有兴趣的自己研究下吧。

人已赞赏
iOS文章

iOS开发runtime基本用法解析和用runtime给键盘添加工具栏和按钮响应事件

2021-2-3 3:25:00

iOS文章

iOS开发设置图片为背景色,且拉伸到指定大小

2021-2-3 4:39:54

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索