最近Tumblr轻博客无论是web端还是移动端,都非常受欢迎,简单调研了一下,其中动画是我感兴趣的,特此写了个仿Tumblr点赞心破碎动画;

1.首先看下效果:
2.模仿Tumblr中的效果应用如下:
原理:使用按钮点击Action增加两个事件,通过改变背景hidden和frame,切换图片,增加动画效果等;
setupUI及touch Action:
<span style="font-size:14px;">- (void)setupUI
{
// 点击的btn
UIButton *praiseBtn = [UIButton buttonWithType:UIButtonTypeCustom];
praiseBtn.frame = CGRectMake(100, 200, KKPraiseBtnWH, KKPraiseBtnWH);
[praiseBtn setImage:[UIImage imageNamed:@"icon_like"] forState:UIControlStateNormal];
[praiseBtn setImage:[UIImage imageNamed:@"icon_likeon"] forState:UIControlStateSelected];
[self.view addSubview:praiseBtn];
[praiseBtn addTarget:self action:@selector(clickTheBtn:) forControlEvents:UIControlEventTouchUpInside];
_praiseBtn = praiseBtn;
// 放大后的btn
_coverBtn = [UIButton buttonWithType:UIButtonTypeCustom];
_coverBtn.frame = praiseBtn.frame;
_coverBtn.alpha = 0;
[_coverBtn setImage:[UIImage imageNamed:@"big"] forState:UIControlStateSelected];
[_coverBtn setImage:[UIImage imageNamed:@"big"] forState:UIControlStateNormal];
[self.view insertSubview:_coverBtn belowSubview:praiseBtn];
_cancelPraiseImg = [[UIImageView alloc]initWithFrame:CGRectMake(80, 150, KKPraiseBtnWH*2, KKPraiseBtnWH*2*KKToBrokenHeartWH)];
_cancelPraiseImg.hidden = YES;
_cancelPraiseImg.centerX = _praiseBtn.centerX;
[self.view addSubview:_cancelPraiseImg];
}
-(void)clickTheBtn:(UIButton *)btn
{
[self playAnimation];
btn.userInteractionEnabled = NO;
btn.selected = !btn.selected;
}
-(void)playAnimation{
if (!_praiseBtn.selected) {
_coverBtn.alpha = 1;
[UIView animateWithDuration:1.0f animations:^{
_coverBtn.frame = CGRectMake(80, 100, KKPraiseBtnWH*2, KKPraiseBtnWH*2);
CAKeyframeAnimation *anima = [CAKeyframeAnimation animationWithKeyPath:@"transform.rotation"];
NSValue *value1 = [NSNumber numberWithFloat:-M_PI/180*5];
NSValue *value2 = [NSNumber numberWithFloat:M_PI/180*5];
NSValue *value3 = [NSNumber numberWithFloat:-M_PI/180*5];
anima.values = @[value1,value2,value3];
anima.repeatCount = MAXFLOAT;
[_coverBtn.layer addAnimation:anima forKey:nil];
_coverBtn.alpha = 0;
_coverBtn.centerX = _praiseBtn.centerX;
} completion:^(BOOL finished) {
_coverBtn.frame = _praiseBtn.frame;
_praiseBtn.userInteractionEnabled = YES;
}];
} else {
_cancelPraiseImg.hidden = NO;
NSArray *imgArr = [NSArray arrayWithObjects:[UIImage imageNamed:@"icon_like_broken1"],[UIImage imageNamed:@"icon_like_broken2"],[UIImage imageNamed:@"icon_like_broken3"],[UIImage imageNamed:@"icon_like_broken4"], nil nil];
_cancelPraiseImg.animationImages = imgArr;
_cancelPraiseImg.animationDuration = KKBorkenTime;
_cancelPraiseImg.animationRepeatCount = 1;
[_cancelPraiseImg startAnimating];
[UIView animateWithDuration:KKBorkenTime animations:^{
_cancelPraiseImg.frame = CGRectMake(80, 200, KKPraiseBtnWH*2, KKPraiseBtnWH*2*KKToBrokenHeartWH);
_cancelPraiseImg.alpha = 0;
}completion:^(BOOL finished) {
_cancelPraiseImg.frame = CGRectMake(80, 150, KKPraiseBtnWH*2, KKPraiseBtnWH*2*KKToBrokenHeartWH);
_cancelPraiseImg.alpha = 1;
_praiseBtn.userInteractionEnabled = YES;
}];
}
}</span>
以上所述是小编给大家介绍的iOS开发中仿Tumblr点赞心破碎动画效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# ios点赞动画效果
# ios仿tumblr点赞
# 仿tumblr心破碎
# iOS实现抖音点赞动画效果
# iOS实现点赞动画特效
# iOS使用核心动画和粒子发射器实现点赞按钮的方法
# 基于UIControl控件实现ios点赞功能
# mysql之脏读、不可重复读、幻读的区别及说明
# 小编
# 在此
# 感兴趣
# 给大家
# 写了
# 受欢迎
# 所述
# 给我留言
# 感谢大家
# 疑问请
# 有任何
# 大后
# 博客
# setImage
# KKPraiseBtnWH
# icon_like
# imageNamed
# UIImage
# praiseBtn
# UIButton
相关文章:
建站之星如何通过成品分离优化网站效率?
PHP正则匹配日期和时间(时间戳转换)的实例代码
如何在局域网内绑定自建网站域名?
高配服务器限时抢购:企业级配置与回收服务一站式优惠方案
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
活动邀请函制作网站有哪些,活动邀请函文案?
如何选择域名并搭建高效网站?
整蛊网站制作软件,手机不停的收到各种网站的验证码短信,是手机病毒还是人为恶搞?有这种手机病毒吗?
小型网站建站如何选择虚拟主机?
c# Task.ConfigureAwait(true) 在什么场景下是必须的
如何高效完成自助建站业务培训?
最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?
湖州网站制作公司有哪些,浙江中蓝新能源公司官网?
c# 在高并发下使用反射发射(Reflection.Emit)的性能
如何用狗爹虚拟主机快速搭建网站?
智能起名网站制作软件有哪些,制作logo的软件?
制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?
北京网站制作的公司有哪些,北京白云观官方网站?
电商平台网站制作流程,电商网站如何制作?
如何在云主机上快速搭建多站点网站?
建站之星各版本价格是多少?
音响网站制作视频教程,隆霸音响官方网站?
教程网站设计制作软件,怎么创建自己的一个网站?
婚礼视频制作网站,学习*后期制作的网站有哪些?
天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?
学校建站服务器如何选型才能满足性能需求?
视频网站app制作软件,有什么好的视频聊天网站或者软件?
建站之星代理平台如何选择最佳方案?
高端建站三要素:定制模板、企业官网与响应式设计优化
如何选择适合PHP云建站的开源框架?
免费视频制作网站,更新又快又好的免费电影网站?
免费ppt制作网站,有没有值得推荐的免费PPT网站?
番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?
Swift中switch语句区间和元组模式匹配
高防服务器租用指南:配置选择与快速部署攻略
成都响应式网站开发,dw怎么把手机适应页面变成网页?
网站好制作吗知乎,网站开发好学吗?有什么技巧?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
如何用景安虚拟主机手机版绑定域名建站?
如何制作网站标识牌,动态网站如何制作(教程)?
建站之星云端配置指南:模板选择与SEO优化一键生成
建站之星CMS建站配置指南:模板选择与SEO优化技巧
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
如何快速建站并高效导出源代码?
建站主机助手选型指南:2025年热门推荐与高效部署技巧
高防服务器租用如何选择配置与防御等级?
高性能网站服务器配置指南:安全稳定与高效建站核心方案
如何快速搭建高效香港服务器网站?
如何基于PHP生成高效IDC网络公司建站源码?
建站之星安全性能如何?防护体系能否抵御黑客入侵?
*请认真填写需求信息,我们会在24小时内与您取得联系。