这是我参与8月更文挑战的第4天,活动详情查看:8月更文挑战
苹果支付的过程总是漫长的,为了让用户渡过难熬的等待过程,有个愉快的支付体验,加入过度动画就成了一个必不可少的选项。
最近,我制作了一个水纹过度动画,项目为:IAPWaveProgressView。UI 如下:
| 调整 | 准备支付 | 支付中 / 验证中 | 支付完成 | 完整动画 |
|---|---|---|---|---|
我将支付过程分成了三个部分:
- 准备支付,为获取 IAP 的商品信息的过程;
- 支付过程+校验,为从开始唤起苹果支付,到服务器校验校验结束的过程;
- 支付成功,提示用户完成了整个购买过程。
动画的绘制过程也相应的分为了三个部分:
- 外面圆圈的绘制过程
- 中间波纹的绘制过程
- 最终的对号绘制过程
动画的绘制过程中,使用到了 CADisplayLink。CADisplayLink是一个和屏幕刷新频率相同的定时器。
IAPWaveProgressView 目前已支持使用 pod 导入到项目当中:
pod 'IAPWaveProgressView'
其中可以自定义的 UI 有:
- 中间展示进度 view 的宽度
- 外圈进度条线的宽度
- 外圈最小路径颜色(已完成进度)的颜色
- 外圈最大路径颜色(未完成进度)的颜色
- 波纹的颜色
- 波纹动画波动的高度
- 波动动画上下浮动的速度
- 波纹动画的内边距
- 完成标识的颜色
- 自定义支付过程中的提示语
如果喜欢,可以点击查看项目IAPWaveProgressView具体的使用实例。