ZZCircleProgress 0.3.1

ZZCircleProgress 0.3.1

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最后发布2019年3月

zhouxing5311维护。



  • 作者:
  • zhouxing5311

ZZCircleProgress

Language Pod Version Pod Platform Pod License Carthage compatible

ZZCircleProgress 是一款高度可自定义的环形进度条。您可以自定义任何可见的部分,包括圆环的开始角度、消除角度、动画时长、动画刷新方式等等。相关的属性设置支持动态化,您可以在进度条加载完成之后随时更改它们的属性。

最近更新

  • 2019.03.01:修复了initWithFrame: pathBackColor: pathFillColor: startAngle: strokeWidth:方法中pathBackColor、pathFillColor方法失效的问题。
  • 2019.01.08:解决了自动布局下进度条大小展示异常的问题;删除了prepareToShow属性;代码优化整理。

特点

  • 可以自定义所有东西。
  • 采用CAAnimation方式实现进度动画,保证了进度条的性能和流畅性。
  • 设置开始角度和减少角度时直接传入对应的角度即可(0-360),无需转换。
  • 您可以在进度条初始化完成之后再次更改进度条的起始角度等属性。
  • 支持以 storyboard、xib 和纯代码方式加载。
  • 支持 Cocoapods。
  • 支持 iOS7.0 及之后的版本。

安装方式

通过 CocoaPods。

pod 'ZZCircleProgress'

pod 'ZZCircleProgress', '~> 0.2.1'

由于刚上传到 CocoaPods,可能需要运行 pod setup 初始化一下。

使用方法

通过storyboard或xib方式加载。

将一个UIView拖拽到故事板中,指定Class为ZZCircleProgress即可。

纯代码方式加载。

ZZCircleProgress *progressView = [[ZZCircleProgress alloc] initWithFrame:CGRectMake(100, 100, 100, 100) pathBackColor:[UIColor lightGrayColor] pathFillColor:[UIColor redColor] startAngle:0 strokeWidth:20];
[self.view addSubview:progressView];

初始化时提供了设置坐标、线条背景色、线条填充色、开始角度以及线条宽度的方法。可以设置相关属性如下。

progressView.reduceAngle = 30;//整合进度条缺少30度
progressView.pointImage.image = [UIImage imageNamed:@"test"];//设置小圆点图片
progressView.duration = 2.0;//动画时长。默认为1.5
progressView.showPoint = NO;//是否显示默认小圆点。默认为YES
progressView.showProgressText = NO;//是否显示默认进度文本。默认为YES
progressView.increaseFromLast = YES;//进度条动画是否从上次进度开始动画。默认为NO
progressView.progressLabel......//progressLabel集成自UILabel。属性随意设置

效果展示

image

更新历史

  • 2019.01.08:解决了自动布局下进度条大小展示异常的问题;删除了prepareToShow属性;代码优化整理。
  • 2018.05.26:解决了iOS10以下设备可能出现的错误。frameInterval和preferredFramesPerSecond进行版本判断。
  • 2018.05.16:发布了0.1.0版本及0.2.0版本到cocoapods。(0.1.0版本包括以前用draw rect实现的进度条)
  • 2018.03.09:ZZCACircleProgress支持属性动态修改,具体实例见demo,ZZCircleProgress增加动画时长属性。
  • 2017.11.24:修复了懒加载提前调用的问题
  • 2017.08.30:修复了xib方式导入不显示的问题

问题反馈

如果在使用过程中遇到任何问题,请随时通过QQ:1098660224,微信:zhouxing5311或提交有关问题。