效果实现
相关代码
代码:Kotlin
/**
* 通过代码设置ProgressBar的形状及颜色
*/
private fun setSeekBarColor() {
val defCorner = 100f
//设置背景 形状及颜色
val bg = GradientDrawable()
bg.shape = GradientDrawable.RECTANGLE
//依次设置 左上(x,y)-右上(x,y)-右下(x,y)-左下(x,y)的圆角角度
bg.cornerRadii = floatArrayOf(0f,0f,defCorner,defCorner,defCorner,defCorner,0f,0f)
bg.color = ColorStateList.valueOf(Utils.changeArgb(ColorConfig.color3))
bg.level = 0
//设置Progress 形状及颜色
val pro = GradientDrawable()
pro.shape = GradientDrawable.RECTANGLE
//依次设置 左上(x,y)-右上(x,y)-右下(x,y)-左下(x,y)的圆角角度
pro.cornerRadii = floatArrayOf(0f,0f,defCorner,defCorner,defCorner,defCorner,0f,0f)
pro.color = ColorStateList.valueOf(Utils.changeArgb(ColorConfig.color1))
val proDra = ClipDrawable(pro,Gravity.START,ClipDrawable.HORIZONTAL)
proDra.level =1
val outDrawables = arrayOf(bg,proDra)
mapseekbar.progressDrawable = LayerDrawable(outDrawables)
//更新gif
Glide.with(this).load(R.drawable.gif_map).into(pv_gif)
}