这篇文章主要介绍了iOS实现音频进度条效果,本文写了一个小demo通过实例代码相结合的形式给大家详细介绍,需要的朋友可以参考下
话不多说先上效果图
看到这个效果的时候我感觉相对比较难的点有两点:
一、是这个进度条的进度颜色变化,这里思路还是比较清晰的,直接用layer的mask来做就可以。
二、第二点就是这个各各条条的高度不一致又没有规律可言,在各个方法中我最终选择用随机数来做。
好了思路清晰了,那就开始撸代码了。
首先创建一个View CYXAudioProgressView
@interface CYXAudioProgressView : UIView
//无动画设置 进度
@property (assign, nonatomic) CGFloat persentage;
//有动画设置 进度 0~1
-(void)setAnimationPersentage:(CGFloat)persentage;
/**
初始化layer 在完成frame赋值后调用一下
*/
-(void)initLayers;
@end
成员变量及初始化方法
/*条条间隙*/
#define kDrawMargin 4
#define kDrawLineWidth 8
/*差值*/
#define differenceValue 51
@interface CYXAudioProgressView ()<CAAnimationDelegate>
/*条条 灰色路径*/
@property (nonatom