可实现多种渐变、直角or弧角、进度条、加载条 (Various gradient, right or arc angle, progress bar and loading bar can be realized)

Github地址

YangsBryant/BGradualProgress

(Github排版比较好,建议进入这里查看详情,如果觉得好,点个star吧!)

引入module

  1. allprojects {
  2. repositories {
  3. google()
  4. jcenter()
  5. maven { url 'https://www.jitpack.io' }
  6. }
  7. }
  1. implementation 'com.github.YangsBryant:BGradualProgress:1.0.4'

布局控件

  1. <com.bryant.progresslibrary.BGradualProgress
  2. android:id="@+id/progress"
  3. android:layout_width="72dp"
  4. android:layout_height="72dp"
  5. app:grp_endColor="#00000000"
  6. app:grp_midColor="#5289F5"
  7. app:grp_startColor="#dce7fd"
  8. app:grp_max="100"
  9. app:grp_roundColor="#dce7fd"
  10. app:grp_roundWidth="6dp"
  11. app:grp_startAngle="-90"
  12. app:grp_textColor="#5289F5"
  13. app:grp_textSize="16sp"
  14. app:layout_constraintTop_toTopOf="parent"
  15. android:layout_marginTop="50dp"
  16. app:layout_constraintLeft_toLeftOf="parent"
  17. android:layout_marginStart="30dp"
  18. />
        
  1. Tips:这是gif里的第一个控件,参考圆环底色+渐变 起始 中间 终止 的颜色值,可调出柔和、好看的渐变
    #GIF图里的代码上面的demo有

BGradualProgress控件属性

方法名 属性
app:grp_roundColor 环形的背景颜色
app:grp_roundWidth 环形的宽带
app:grp_progressFillet 进度条是否用圆角画笔
app:grp_max 环形的最大值
app:grp_text 中间的文字内容
app:grp_textColor 中间的文字颜色
app:grp_textSize 中间文件的字体大小
app:grp_textShow 是否显示文字
app:grp_startAngle 进度初始点的绘制位置
app:grp_startColor 渐变的起始色
app:grp_midColor 渐变的中间色
app:grp_endColor 渐变的终止色

BGradualProgress动态属性

方法名 属性
setMax(int max) 设置进度的最大值
getProgress() 获取当前进度值
setProgress(int progress) 设置当前进度
setText(String text) 更新文本内容
setRoundColor(int roundColor) 设置圆环底色
setStartColor(int startColor) 设置渐变起始色
setMidColor(int midColor) 设置渐变中间色
setEndColor(int endColor) 设置渐变终止色

Android BGradualProgress 多种渐变、直角or弧角、进度条、加载条的更多相关文章

  1. android ListView的上部下拉刷新下部点击加载更多具体实现及拓展

    android ListView的上部下拉刷新下部点击加载更多具体实现及拓展 ListView下拉刷新,上拉自动加载更多 下拉刷新以及加载更多

  2. 【走过巨坑】android studio对于jni调用及运行闪退无法加载库的问题解决方案

    相信很多小伙伴都在android开发中遇到调用jni的各种巨坑,因为我们不得不在很多地方用到第三方库so文件,然而第三方官方通常都只会给出ADT环境下的集成方式,而谷歌亲儿子android studi ...

  3. 【Android】纯代码创建页面布局(含异步加载图片)

    开发环境:macOS 10.12 + Android Studio 2.2,MinSDK Android 5.1 先看看总体效果 本示例是基于Fragment进行的,直接上代码: [界面结构] 在 F ...

  4. Android 框架练成 教你打造高效的图片加载框架(转)

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/41874561,本文出自:[张鸿洋的博客] 1.概述 优秀的图片加载框架不要太多, ...

  5. Android 学习笔记之Volley(八)实现网络图片的数据加载

    PS:最后一篇关于Volley框架的博客... 学习内容: 1.使用ImageRequest.java实现网络图片加载 2.使用ImageLoader.java实现网络图片加载 3.使用NetWork ...

  6. Android利用V4包中的SwipeRefreshLayout实现上拉加载

    基本原理 上拉加载或者说滚动到底部时自动加载,都是通过判断是否滚动到了ListView或者其他View的底部,然后触发相应的操作,这里我们以 ListView来说明.因此我们需要在监听ListView ...

  7. Android(java)学习笔记236:多媒体之加载大图片到内存(Bitmap API)

    1.Bitmap (API使用) android里面的bitmap中,一个像素点需要4个byte去表示,这是因为android表示颜色是" argb ":其中 a 表示是透明度,然 ...

  8. Android 框架练成 教你打造高效的图片加载框架

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/41874561,本文出自:[张鸿洋的博客] 1.概述 优秀的图片加载框架不要太多, ...

  9. Android 源码解析:单例模式-通过容器实现单例模式-懒加载方式

    本文分析了 Android 系统服务通过容器实现单例,确保系统服务的全局唯一. 开发过 Android 的用户肯定都用过这句代码,主要作用是把布局文件 XML 加载到系统中,转换为 Android 的 ...

随机推荐

  1. 题解——面积(area.cpp)

    题目来源&题面简述: 思路与算法选择: 只有*里面的部分对我们有用,所以可以将 *号外的部分标记一下. 可以用著名的BFS大法实现此过程.(连通块) 连通块模板: #include<bi ...

  2. 移动端App uni-app + mui 开发记录

    前言 uni-app uni-app是DCloud推出的终极跨平台解决方案,是一个使用Vue.js开发所有前端应用的框架,官网:https://uniapp.dcloud.io/ mui 号称最接近原 ...

  3. java JDK安装包的获取与安装

    Java JDK 安装包获取和安装: JDK 1.8.211 官网下载地址 https://www.oracle.com/technetwork/java/javase/downloads/jdk8- ...

  4. kubelet组件部署

    目录 前言 创建 kubelet bootstrap kubeconfig 文件 查看kubeadm为各个节点创建的token 查看各 token 关联的 Secret 创建和分发kubelet参数配 ...

  5. Centos 6.x Openssh 升级 7.7p1 版本

    OpenSSH 升级 目前在一家金融公司上班,正好赶上金融公司各种暴雷,本人心里慌慌的. 然后就是金融公司要进行的最低的三级等保评测,各种修改系统安全,密码强度.WAF.防火墙等各种. 评测公司对我司 ...

  6. Leetcode_01【两数之和】

    文章目录:  题目 脚本一及注释 脚本逻辑 脚本二及注释 脚本逻辑 题目: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. ...

  7. 基于ManagedDataAccess开发的OracleDBHelpe工具集伸手党的福音

    在使用前先加入ManagedDataAccessDLL文件方可使用 添加方法:右键项目.点击管理NuGet程序包,点击浏览,在输入框内输入ManagedDataAccess,再点击安装即可 Oracl ...

  8. 跨平台c开发库tbox:内存库使用详解

    TBOX是一个用c语言实现的跨平台开发库. 针对各个平台,封装了统一的接口,简化了各类开发过程中常用操作,使你在开发过程中,更加关注实际应用的开发,而不是把时间浪费在琐碎的接口兼容性上面,并且充分利用 ...

  9. Vue各种配置

    小知识 Vue.prototype和Vue.use的区别 这个是全局可以通过Vue对象获取serring的值 Vue.prototype.$settings = settings; 这个是配置全局环境 ...

  10. js中的宏任务与微任务

    如果你已经知道了js中存在宏任务和微任务,那么你一定已经了解过promise了.因为在js中promise是微任务的一个入口. 先来看一道题: setTimeout(function(){ conso ...