解决方法
我假设你已经扩展了基础类,所以你有这样的东西:
- public class SeekBarHint extends SeekBar {
- public SeekBarHint (Context context) {
- super(context);
- }
- public SeekBarHint (Context context,AttributeSet attrs,int defStyle) {
- super(context,attrs,defStyle);
- }
- public SeekBarHint (Context context,AttributeSet attrs) {
- super(context,attrs);
- }
- }
现在你用一些你自己的代码覆盖onDraw方法.插入以下内容:
- @Override
- protected void onDraw(Canvas c) {
- super.onDraw(c);
- }
现在,你想在拇指附近画一些文字,但是没有一个方便的方法来获取拇指的x位置.我们只需要一点数学.
- @Override
- protected void onDraw(Canvas c) {
- super.onDraw(c);
- int thumb_x = ( (double)this.getProgress()/this.getMax() ) * (double)this.getWidth();
- int middle = this.getHeight()/2;
- // your drawing code here,ie Canvas.drawText();
- }