上の画像のように、SeekBar のつまみの上にテキストを描画しようとしています。アイデアは、親指を SeekBar に沿って移動すると、親指の上にテキストが表示されるということです。親指の内側にテキストを描画できますが、親指の外側に描画しようとすると機能しません。以下は私のコードです:
public class MainActivity extends Activity {
SeekBar mybar;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mybar = (SeekBar) findViewById(R.id.seekBar1);
mybar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// add here your implementation
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// add here your implementation
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
int value = seekBar.getProgress();
String valueString = value + "";
Paint paint = new Paint();
paint.setColor(Color.BLACK);
Bitmap b = Bitmap.createBitmap(600, 600,
Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(b);
canvas.drawText(valueString, 100, 100, paint);
seekBar.draw(canvas);
}
});
}
}
onDraw メソッドをオーバーライドして、代わりにそのようにする必要がありますか?