Java 更改自定义seekbar值以调整外观

Java 更改自定义seekbar值以调整外观,java,android,drawable,Java,Android,Drawable,我正在创建一个应用程序,您可以在其中设计自己的自定义seekbar,并在应用程序中预览以帮助开发人员。现在我有了处理seekbar的XML代码: <?xml version="1.0" encoding="UTF-8"?> 我在java代码中使用GradientDrawable来更改seekbar的背景,但是当我这样做时,它不会更改seekbar的背景,而是更改seekbar后面的背景。另外,当我更改progressDrawable时,它会用新的背景填充整个seekba

我正在创建一个应用程序,您可以在其中设计自己的自定义seekbar,并在应用程序中预览以帮助开发人员。现在我有了处理seekbar的XML代码:

<?xml version="1.0" encoding="UTF-8"?>


我在java代码中使用GradientDrawable来更改seekbar的背景,但是当我这样做时,它不会更改seekbar的背景,而是更改seekbar后面的背景。另外,当我更改progressDrawable时,它会用新的背景填充整个seekbar,而不仅仅是所取得的进展。 我尝试过创建LayerDrawable和ClipDrawable,但现在不知道如何更改我的图层列表中这些特定项目的Drawable

图像:


好的,我找到了解决办法。 创建一个称为层的可绘制数组,如下所示:

Drawable[] layers = {new ColorDrawable(0xff000044), new ClipDrawable(seekbardraw, Gravity.LEFT, ClipDrawable.HORIZONTAL)};
然后代替
customseekbar.setProgressDrawable(可绘制)您可以使用以下命令:

customseekbar.setProgressDrawable(new LayerDrawable(layers));

发布一个链接,链接到描述issue@pskink我在问题中添加了图像你确定@drawable/progress\u fill包含渐变吗?是的。它确实包含一个gradienttry这是你想要的吗?
customseekbar.setProgressDrawable(new LayerDrawable(layers));