前言:
进度条常见的样式, 目前暂时没看到比较好用的框架, 或者说不好在原有的基础上扩展, 本框架的成员变量和方法几乎都是用protected 和 public, 给用户随便扩展.
先上效果图---常见样式
总体效果.gif
结构图.png
一. 导入框架
//项目根目录下 build.gradle
allprojects {
repositories {
...
maven { url 'https://jitpack.io' } //添加
}
}
//app目录下 build.gradle
dependencies {
implementation 'com.github.liys666666:LProgressView:V1.0.82' //添加
}
//xml布局中
....
app:progress_value = "50"/>
.... />
.... />
.... />
.... />
二. 所有属性
1. LineProView
LineProView.png
//公共属性
//总数
//进度
//进度条 大小
//进度条 颜色
//进度条背景颜色
//文字大小
//文字颜色
//是否显示文字
//保留多少位小数
//发光颜色
//是否需要发光
//边框颜色
//边框大小
//是否需要边框
//圆角
//进度条 前进方向圆角
2. LineCentreProView
LineCentreProView.png
//总数
//进度
//进度条 大小
//进度条 颜色
//进度条背景颜色
//文字大小
//文字颜色
//是否显示文字
//保留多少位小数
//发光颜色
//是否需要发光
//边框颜色
//边框大小
//是否需要边框
//进度条 前进方向圆角
//方框宽度
//方框圆角
3. LineBottomProView
LineBottomProView.png
//总数
//进度
//进度条 大小
//进度条 颜色
//进度条背景颜色
//文字大小
//文字颜色
//是否显示文字
//保留多少位小数
//发光颜色
//是否需要发光
//圆角
//方框--宽度
//方框--高度
//方框--圆角
4. ArcProView
ArcProView.png
//总数
//进度
//进度条 大小
//进度条 颜色
//进度条背景颜色
//文字大小
//文字颜色
//是否显示文字
//保留多少位小数
//发光颜色
//是否需要发光
//开始角度
//需要绘制的角度
5. WaterWaveProView
WaterWaveProView.png
//总数
//进度
//进度条 大小
//进度条 颜色
//进度条背景颜色
//文字大小
//文字颜色
//是否显示文字
//保留多少位小数
//发光颜色
//是否需要发光
//边框颜色
//边框大小
//是否需要边框
// 水波长
//水波高度
//水波--速度
三. 总结
1. 这里没有渐变属性, 如果需要, 可参考每个ProView对应的详细文章.
2. 使用简介, 学习成本低, 属性一查即可知道
3. 支持用户在原有的基础扩展和修改, 每个成员变量几乎都有set和get方法.
① 例如: 对于画笔Paint可以用对应get方法取出, 然后设置对应的属性.
② 例如: 继承对应的View, 重写对应的方法进行覆盖.