如何获得Android SeekBar的拇指以匹配SeekBar的高度?

时间:2010-09-05 23:51:45

标签: android height scrollbar

我是否需要实现自定义拇指Drawable?

2 个答案:

答案 0 :(得分:3)

通过一些挖掘,我找到了如何提供自定义Drawable拇指。这是一个可以帮助他人的摘录。

  ShapeDrawable thumb = new ShapeDrawable( new RectShape() );
  thumb.getPaint().setColor( 0x00FF00 );
  thumb.setIntrinsicHeight( 80 );
  thumb.setIntrinsicWidth( 30 );
  mySeekBar.setThumb( thumb );

答案 1 :(得分:2)

这是一个老帖子,但我从谷歌发现了这个。所以这是我的解决方案:

Drawable thumb; //load this earlier.

@Override
protected void onFinishInflate() {
    super.onFinishInflate();
    thumb = getContext().getResources().getDrawable(R.drawable.slider_thumb);
}

private void expandThumb(int height) {
    thumb.setBounds(0, 0, thumb.getIntrinsicWidth(), height); 
    //force a redraw
    int progress = getProgress();
    setProgress(0);
    setProgress(progress);
}

@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
    super.onSizeChanged(w, h, oldw, oldh);
    expandThumb(h);
}