CircleProgressView

Introduction: 🎡 CircleProgressView 是一个圆形渐变的进度动画控件,动画效果纵享丝滑。
More: Author   ReportBugs   
Tags:

MavenCentral JitPack CI Download API License

CircleProgressView for Android 是一个圆形的进度动画控件,动画效果纵享丝滑。

效果展示

Image

你也可以直接下载 演示 App 体验效果

引入

Gradle:

  1. 在 Project 的 build.gradlesetting.gradle 中添加远程仓库

     repositories {
         //...
         mavenCentral()
     }
    
  2. 在 Module 的 build.gradle 中添加依赖项

     implementation 'com.github.jenly1314:circleprogressview:1.1.3'
    

使用

CircleProgressView 自定义属性说明(进度默认渐变色)

属性 值类型 默认值 说明
cpvStrokeWidth dimension 12dp 笔画描边的宽度
cpvNormalColor color #FFC8C8C8 圆正常颜色
cpvProgressColor color #FF4FEAAC 圆进度颜色
cpvStartAngle integer 270 开始角度,默认十二点钟方向
cpvSweepAngle integer 360 扫描角度范围
cpvMax integer 100 进度最大值
cpvProgress integer 0 当前进度
cpvDuration integer 500 动画时长
cpvLabelText string 中间的标签文本,默认自动显示百分比
cpvLabelTextColor color #FF333333 文本字体颜色
cpvLabelTextSize dimension 30sp 文本字体大小
cpvShowLabel boolean true 是否显示文本
cpvShowTick boolean true 是否显示外环刻度
cpvCirclePadding dimension 10dp 外圆环刻度与内圆环间距
cpvTickSplitAngle integer 5 刻度间隔的角度大小
cpvBlockAngle integer 1 刻度的角度大小
cpvTickOffsetAngle integer 0 刻度偏移的角度大小
cpvTurn boolean false 是否旋转
cpvCapRound boolean true 是否是圆形线冒(圆角弧度)
cpvLabelPaddingLeft dimension 0dp 文本居左边内间距
cpvLabelPaddingTop dimension 0dp 文本居顶边内间距
cpvLabelPaddingRight dimension 0dp 文本居右边内间距
cpvLabelPaddingBottom dimension 0dp 文本居底边内间距

示例

布局示例

    <com.king.view.circleprogressview.CircleProgressView
        android:id="@+id/cpv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"/>

代码示例

    //显示进度动画,进度,动画时长
    circleProgressView.showAnimation(80,3000);
    //设置当前进度
    circleProgressView.setProgress(80);
    //设置进度改变监听
    circleProgressView.setOnChangeListener(onChangeListener);

更多使用详情,请查看app中的源码使用示例或直接查看 API 帮助文档

相关推荐

  • ArcSeekBar 一个弧形的拖动条进度控件,配置参数完全可定制化。
  • SpinCounterView 一个类似码表变化的旋转计数器动画控件。
  • CounterView 一个数字变化效果的计数器视图控件。
  • RadarView 一个雷达扫描动画后,然后展示得分效果的控件。
  • SuperTextView 一个在 TextView 的基础上扩展了几种动画效果的控件。
  • LoadingView 一个圆弧加载过渡动画,圆弧个数,大小,弧度,渐变颜色,完全可配。
  • WaveView 一个水波纹动画控件视图,支持波纹数,波纹振幅,波纹颜色,波纹速度,波纹方向等属性完全可配。
  • GiftSurfaceView 一个适用于直播间送礼物拼图案的动画控件。
  • FlutteringLayout 一个适用于直播间点赞桃心飘动效果的控件。
  • DragPolygonView 一个支持可拖动多边形,支持通过拖拽多边形的角改变其形状的任意多边形控件。
  • DrawBoard 一个自定义 View 实现的画板;方便对图片进行编辑和各种涂鸦相关操作。
  • compose-component 一个 Jetpack Compose 的组件库;主要提供了一些小组件,便于快速使用。

版本日志

v1.1.3:2021-9-2 (从 v1.1.3 开始发布至 MavenCentral)

  • 对外暴露更多 getter 和 setter 方法
  • 新增 cpvTickOffsetAngle 属性

v1.1.2:2020-12-2

  • 优化设置渐变色过程处理

v1.1.1:2020-4-2

  • 新增 cpvLabelPadding..相关属性

v1.1.0:2019-8-19

  • 移除 appcompat 依赖

v1.0.1:2019-5-23

  • 新增 cpvTurn 属性(是否旋转)

v1.0.0:2019-2-17

  • CircleProgressView 初始版本

footer

Apps
About Me
GitHub: Trinea
Facebook: Dev Tools