iOS动画——弹窗动画(pop动画)
来源:互联网 发布:java断点续传下载校验 编辑:程序博客网 时间:2024/05/18 04:28
用pop动画简单实现弹窗的缩放和渐变,感觉这个动画常用,就写一下博客
pop动画是Facebook推出的动画引擎,请自行到GitHub上搜索下载拖拽导入xcode项目中。
更多pop动画使用和原理可网上搜索学习
本处只简单介绍代码开发使用,紧以弹窗效果为思路。
1. 控制器导入头文件 #import "POP.h"
2.创建弹窗透明黑色背景
- (void)createBlackView { self.blackView = [[UIView alloc] initWithFrame:self.contentView.bounds]; self.blackView.backgroundColor = [UIColor blackColor]; self.blackView.alpha = 0; [self addSubview:self.blackView]; [UIView animateWithDuration:0.3f animations:^{ self.blackView.alpha = 0.25f; }];}
3.创建白色上面的白色view,并加上所需的控件,给白色的messageView做pop动画效果,
代码如下
// 执行动画 改变透明度 POPBasicAnimation *alpha = [POPBasicAnimation animationWithPropertyNamed:kPOPViewAlpha]; alpha.toValue = @(1.f); alpha.duration = 0.3f; [self.messageView pop_addAnimation:alpha forKey:nil]; // 缩放回弹 POPSpringAnimation *scale = [POPSpringAnimation animationWithPropertyNamed:kPOPLayerScaleXY]; scale.fromValue = [NSValue valueWithCGSize:CGSizeMake(1.75f, 1.75f)]; scale.toValue = [NSValue valueWithCGSize:CGSizeMake(1.f, 1.f)]; scale.dynamicsTension = 1000; scale.dynamicsMass = 1.3; scale.dynamicsFriction = 10.3; scale.springSpeed = 20; scale.springBounciness = 15.64; scale.delegate = self; [self.messageView.layer pop_addAnimation:scale forKey:nil];
4.弹窗消失的思路代码
- (void)removeViews { [UIView animateWithDuration:0.2f animations:^{ self.blackView.alpha = 0.f; self.messageView.alpha = 0.f; self.messageView.transform = CGAffineTransformMakeScale(0.75f, 0.75f); } completion:^(BOOL finished) { [self removeFromSuperview]; }];}
0 0
- iOS动画——弹窗动画(pop动画)
- iOS动画——回弹动画实例(pop动画)
- ios push pop动画
- ios pop 折叠动画
- ios pop系统动画
- iOS动画POP
- iOS自定义转场动画(2)——自定义Pop转场动画并加入手势驱动
- iOS 自定义动画 push/pop动画
- pop动画
- pop动画
- IOS POP 时 无动画
- iOS Facebook pop动画进阶
- IOS 动画框架pop使用方法
- POP — Facebook开源动画引擎
- 自定义转场动画 pop动画
- UIButton点击动画 ---pop动画
- iOS动画——按钮弹窗
- iOS 动画总结—UIView动画
- jquery 怎么获取CSS中属性值的数值
- Python新闻联播词频统计
- 编程练习:判断点是否在矩形内
- sass(ruby)
- android fragment 切换时隐藏软键盘
- iOS动画——弹窗动画(pop动画)
- clock、GetTickCount的计时 Win7: clock的精度是1ms,但GetTickCou
- 关于git命令“git rev-parse --short HEAD”在android studio中使用与配置的个人探究
- ML Pipeline —— spark官网译文
- Java内存管理原理及内存区域详解(转)
- 关于Gradle版本问题
- 动态代理模式的Java实现
- SAP方丈-SAP常见问题与解决办法(转)
- 游戏术语 DAU APA ACU PCU