2010-10-07 80 views
3

目前我正在尝试更改android中seekbar的Thumb的可绘制图像。在onCreate()方法我可以使用下面的如何在'onCreate'方法之后更改Android SeekBar Thumb drawable?

mSeekBar.setThumb(myDrawable); 

但是切实改变拇指时,onCreate方法被调用后,我再次尝试使用不同的绘制用同样的方法和拇指去改变它消失。 api描述是'设置将在SeekBar内的进度表末尾绘制的拇指。'这是否意味着图像将从屏幕上绘制出来(如果我用我的seekbar“fill_parent”)?我试图改变偏移量无济于事,是否有其他人遇到过这个问题?或者知道如何在进度发生变化时更改拇指图像?

我还应该提及,我将seekbar的背景设置为空白xml文件(即不具有背景图像)。

+0

目前我发现要做到这一点的唯一方法是再次调用onCreate()方法以便使用setThumb()更改拇指图像。 – 2010-10-08 14:11:01

回答

3

对我来说部分工作的一件事是使用setBounds方法,但是我遇到的问题是在我的应用程序中它将可绘制的位置重置回行的开头。我不知道这与我的代码是如何工作有关,或者不管它是如何实现的。

Drawable myThumb = getResources().getDrawable(R.drawable.slider_button); 
myThumb.setBounds(new Rect(0, 0, myThumb.getIntrinsicWidth(),myThumb.getIntrinsicHeight())); 
skbr.setThumb(myThumb); 
+0

谢谢你的帮助! – user754730 2015-06-20 07:06:57