Android代码中动态设置ProgressBar背景

您所在的位置:网站首页 java代码设置颜色 Android代码中动态设置ProgressBar背景

Android代码中动态设置ProgressBar背景

2024-04-26 23:16| 来源: 网络整理| 查看: 265

总共介绍两种方式,一种是在xml文件中写死的,一种是java代码动态设置的,第二种的优势就是可以动态设置,比如根据用户设置或者后台回传的样式来动态进行设置。

第一种 xml 设置

直接 drawable 文件夹下新建一个 xml 文件,配置代码如下:

设置background, secondaryProgress, progress的颜色和弧度值。 然后在布局文件中设置进去

第二种 java代码动态设置

原理一样,在代码中给 Drawable 设置背景和弧度值,最后设置给 progressBar,下边附上代码:

int roundRadius = 8; // 圆角半径 The x-radius of the oval used to round the corners //准备progressBar带圆角的背景Drawable GradientDrawable progressBg = new GradientDrawable(); //设置圆角弧度 progressBg.setCornerRadius(roundRadius); //设置绘制颜色 progressBg.setColor(Color.parseColor("#E4E7ED")); //准备progressBar带圆角的进度条Drawable GradientDrawable progressContent = new GradientDrawable(); progressContent.setCornerRadius(roundRadius); //设置绘制颜色,此处可以自己获取不同的颜色 progressContent.setColor(Color.parseColor("#409EFF")); //ClipDrawable是对一个Drawable进行剪切操作,可以控制这个drawable的剪切区域,以及相相对于容器的对齐方式 ClipDrawable progressClip = new ClipDrawable(progressContent, Gravity.START, ClipDrawable.HORIZONTAL); //设置progressBarDrawable progress.setProgressDrawable(progressClip); progress.setBackground(progressBg);

这样即可实现,当时progressBar也可以在代码中动态生成,然后动态设置位置,都是可以的,根据自己的需求来实现即可。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3