注册

ArcSeekBar for Android 是一个弧形的拖动条进度控件


ArcSeekBar

ArcSeekBar for Android 是一个弧形的拖动条进度控件,配置参数完全可定制化。

ArcSeekBar 是基于 CircleProgressView 修改而来的库。 但青出于蓝而胜于蓝,所以 CircleProgressView 的大部分用法,ArcSeekBar基本都支持,而且可配置的参数更细致。

之所以新造一个ArcSeekBar库,而不直接在CircleProgressView上面直接改,原因是CircleProgressView里面的部分动画效果对于SeekBar并不适用,所以ArcSeekBar是在CircleProgressView的基础上有所删减后,而再进行扩展增强的。 实际还需根据具体的需求而选择适合的。

Gif 展示

Image

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

属性值类型默认值说明
arcStrokeWidthdimension12dp画笔描边的宽度
arcStrokeCapenumROUND画笔的线冒样式
arcNormalColorcolor#FFC8C8C8弧形正常颜色
arcProgressColorcolor#FF4FEAAC弧形进度颜色
arcStartAngleinteger270开始角度,默认十二点钟方向
arcSweepAngleinteger360扫描角度范围
arcMaxinteger100进度最大值
arcProgressinteger0当前进度
arcDurationinteger500动画时长
arcLabelTextstring中间的标签文本,默认自动显示百分比
arcLabelTextColorcolor#FF333333文本字体颜色
arcLabelTextSizedimension30sp文本字体大小
arcLabelPaddingTopdimension0dp文本居顶边内间距
arcLabelPaddingBottomdimension0dp文本居底边内间距
arcLabelPaddingLeftdimension0dp文本居左边内间距
arcLabelPaddingRightdimension0dp文本居右边内间距
arcShowLabelbooleantrue是否显示文本
arcShowTickbooleantrue是否显示环刻度
arcTickStrokeWidthdimension10dp刻度描边宽度
arcTickPaddingdimension2dp环刻度与环间距
arcTickSplitAngleinteger5刻度间隔的角度大小
arcBlockAngleinteger1刻度的角度大小
arcThumbStrokeWidthdimension8dp拖动按钮描边宽度
arcThumbColorcolor#FFE8D30F拖动按钮颜色
arcThumbRadiusdimension10dp拖动按钮半径
arcThumbRadiusEnlargesdimension8dp触摸时按钮半径放大量
arcShowThumbbooleantrue是否显示拖动按钮
arcAllowableOffsetsdimension10dp触摸时可偏移距离:偏移量越大,触摸精度越小
arcEnabledDragbooleantrue是否启用通过拖动改变进度
arcEnabledSinglebooleantrue是否启用通过点击改变进度

引入

Maven:

<dependency>
<groupId>com.king.view</groupId>
<artifactId>arcseekbar</artifactId>
<version>1.0.2</version>
<type>pom</type>
</dependency>

Gradle:

implementation 'com.king.view:arcseekbar:1.0.2'

Lvy:

<dependency org='com.king.view' name='arcseekbar' rev='1.0.2'>
<artifact name='$AID' ext='pom'></artifact>
</dependency>
如果Gradle出现compile失败的情况,可以在Project的build.gradle里面添加如下:(也可以使用上面的GitPack来complie)
allprojects {
repositories {
maven { url 'https://dl.bintray.com/jenly/maven' }
}
}

示例

布局示例

    <com.king.view.arcseekbar.ArcSeekBar
android:id="@+id/arcSeekBar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>

代码示例

    //进度改变监听
arcSeekBar.setOnChangeListener(listener);
//设置进度
arcSeekBar.setProgress(progress);
//显示进度动画(进度,动画时长)
arcSeekBar.showAnimation(80,3000);

更多使用详情,请查看app中的源码使用示例

代码下载: ArcSeekBar.zip

0 个评论

要回复文章请先登录注册