An open API service indexing awesome lists of open source software.

https://github.com/zhou-you/easysignseekbar

本库主要提供一个漂亮而强大的自定义SeekBar,进度变化由提示牌 (sign)展示,具有强大的属性设置,支持设置section(节点)、mark(标记)、track(轨迹)、thumb(拖动块)、progress(进度)、sign(提示框)等功能
https://github.com/zhou-you/easysignseekbar

custom-view seekbar thumbs view

Last synced: 6 months ago
JSON representation

本库主要提供一个漂亮而强大的自定义SeekBar,进度变化由提示牌 (sign)展示,具有强大的属性设置,支持设置section(节点)、mark(标记)、track(轨迹)、thumb(拖动块)、progress(进度)、sign(提示框)等功能

Awesome Lists containing this project

README

          

## EasySignSeekBar
本库主要提供一个漂亮而强大的自定义SeekBar,进度变化由提示牌 (sign)展示,具有强大的属性设置,支持设置section(节点)、mark(标记)、track(轨迹)、thumb(拖动块)、progress(进度)、sign(提示框)等功能

## 主要功能

- 强大的track(轨迹)和second track (选中轨迹)的最小值、最大值、轨迹粗细,颜色等设置;
- 灵活的数字显示,支持设置进度展示、节点文本展示采用整数还是浮点数;
- 支持设置进度单位,例如 10s,15km/h、平方,对数等;
- 支持手柄拖动块thumb半径、颜色、阴影、透明度等;
- 支持节点个数、文字大小、颜色设置;
- 支持指示牌宽高、颜色、圆角半径、三角arrow指示、border边框、跟随thumb移动等;
- 支持设置拖动进度监听回掉;
- 支持格式化进度数字,完全自定义进度样式
- ......

## 关于我
[![github](https://img.shields.io/badge/GitHub-zhou--you-green.svg)](https://github.com/zhou-you) [![csdn](https://img.shields.io/badge/CSDN-zhouy478319399-green.svg)](http://blog.csdn.net/zhouy478319399)
## 联系方式
本群旨在为使用我github项目的人提供方便,如果遇到问题欢迎在群里提问。
#### 欢迎加入QQ交流群(Q1群已满,请加入Q2群)

[![](https://img.shields.io/badge/%E7%82%B9%E6%88%91%E4%B8%80%E9%94%AE%E5%8A%A0%E5%85%A5Q1%E7%BE%A4-581235049%28%E5%B7%B2%E6%BB%A1%29-blue.svg)](http://shang.qq.com/wpa/qunwpa?idkey=1e1f4bcfd8775a55e6cf6411f6ff0e7058ff469ef87c4d1e67890c27f0c5a390)

[![](https://img.shields.io/badge/%E7%82%B9%E6%88%91%E4%B8%80%E9%94%AE%E5%8A%A0%E5%85%A5Q2%E7%BE%A4-832887601-blue.svg)](http://shang.qq.com/wpa/qunwpa?idkey=f3c997d1c3cc6a8c9fa46d3fde0d663f50e4e6d0e6441b8cc276bef39befd24c)

![](http://img.blog.csdn.net/20170601165330238)![](https://img-blog.csdnimg.cn/20190627164802234.jpg)
## 演示(请star支持)
![](https://github.com/zhou-you/EasySignSeekBar/blob/master/screenshot/1.gif?raw=true) ![](https://github.com/zhou-you/EasySignSeekBar/blob/master/screenshot/2.gif?raw=true)

![](https://github.com/zhou-you/EasySignSeekBar/blob/master/screenshot/3.gif?raw=true) ![](https://github.com/zhou-you/EasySignSeekBar/blob/master/screenshot/4.gif?raw=true)

## 版本说明
[![release](https://img.shields.io/badge/release-v1.0.6-orange.svg)](https://github.com/zhou-you/EasySignSeekBar/blob/master/update.md)

## Demo下载

[![downloads](https://img.shields.io/badge/downloads-460k-blue.svg)](https://github.com/zhou-you/EasySignSeekBar/blob/master/apk/signseekbar_demo.apk?raw=true)

## 用法介绍
### build.gradle设置

```
dependencies {
compile 'com.zhouyou:signseekbar:1.0.6'
}

```
想查看所有版本,请点击下面地址。

[![jcenter](https://img.shields.io/badge/Jcenter-Latest%20Release-orange.svg)](https://jcenter.bintray.com/com/zhouyou/signseekbar/)
### xml
```

```
### java
```
signSeekBar.getConfigBuilder()
.min(0)
.max(4)
.progress(2)
.sectionCount(4)
.trackColor(ContextCompat.getColor(getContext(), R.color.color_gray))
.secondTrackColor(ContextCompat.getColor(getContext(), R.color.color_blue))
.thumbColor(ContextCompat.getColor(getContext(), R.color.color_blue))
.sectionTextColor(ContextCompat.getColor(getContext(), R.color.colorPrimary))
.sectionTextSize(16)
.thumbTextColor(ContextCompat.getColor(getContext(), R.color.color_red))
.thumbTextSize(18)
.signColor(ContextCompat.getColor(getContext(), R.color.color_green))
.signTextSize(18)
.autoAdjustSectionMark()
.sectionTextPosition(SignSeekBar.TextPosition.BELOW_SECTION_MARK)
.build();

```
### 回调
```
signSeekBar.setOnProgressChangedListener(new SignSeekBar.OnProgressChangedListener() {
@Override
public void onProgressChanged(SignSeekBar signSeekBar, int progress, float progressFloat,boolean fromUser) {
//fromUser 表示是否是用户触发 是否是用户touch事件产生
String s = String.format(Locale.CHINA, "onChanged int:%d, float:%.1f", progress, progressFloat);
progressText.setText(s);
}

@Override
public void getProgressOnActionUp(SignSeekBar signSeekBar, int progress, float progressFloat) {
String s = String.format(Locale.CHINA, "onActionUp int:%d, float:%.1f", progress, progressFloat);
progressText.setText(s);
}

@Override
public void getProgressOnFinally(SignSeekBar signSeekBar, int progress, float progressFloat,boolean fromUser) {
String s = String.format(Locale.CHINA, "onFinally int:%d, float:%.1f", progress, progressFloat);
progressText.setText(s + getContext().getResources().getStringArray(R.array.labels)[progress]);
}
});
```
### Attributes
```





















































```
## 原理介绍
想了解具体实现细节,请移步CSDN博客:
[http://blog.csdn.net/zhouy478319399/article/details/78298104](http://blog.csdn.net/zhouy478319399/article/details/78298104)

## 感谢
在此感谢[BubbleSeekBar](https://github.com/woxingxiao/BubbleSeekBar)作者提供的开源库,对于本库的完成提供了很大的帮助。