【问题标题】:How can I change the Android SeekBar Thumb drawable after 'onCreate' method?如何在“onCreate”方法之后更改 Android SeekBar Thumb drawable?
【发布时间】:2016-05-07 21:47:01
【问题描述】:

目前我正在尝试更改 android 中搜索栏的 Thumb 的可绘制图像。在 onCreate() 方法中,我可以使用以下方法有效地更改拇指

mSeekBar.setThumb(myDrawable);

但是,在调用 onCreate 方法之后,我尝试使用具有相同方法的不同可绘制对象再次更改它,并且拇指消失了。 api 描述是“设置将在 SeekBar 内的进度表末尾绘制的拇指。”这是否意味着图像将被画出屏幕(如果我用我的搜索栏'fill_parent')?我已经尝试更改偏移量但无济于事,还有其他人遇到这个问题吗?或者知道如何在进度变化时更改缩略图?

我还应该提到,我正在将搜索栏的背景可绘制对象设置为空白 xml 文件(即没有背景图像)。

【问题讨论】:

  • 目前我发现的唯一方法是再次调用 onCreate() 方法,以便使用 setThumb() 更改拇指图像。

标签: android seekbar


【解决方案1】:

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

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

【讨论】:

  • 感谢这有很大帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多