我正在制作一个自定义SeekBar,其拇指上方具有TextView,如下所示:
我使用的代码是(-30是将文本视图居中的宽度):
SeekBar.OnSeekBarChangeListener seekBarChangeListener = new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
int val = (progress * (seekBar.getWidth() - 2 * seekBar.getThumbOffset())) / seekBar.getMax();
Tv_SbDistanceText.setText(progress + " Km");
Tv_SbDistanceText.setX(seekBar.getX() + val + seekBar.getThumbOffset() / 2 - 30);
Show_Map(dpWidth, dpHeight, Lat, Lon, progress*1000);
}
事实是,当我移动拇指时,textview越来越多地移动:
((不是因为有-30,我测试了它是否带有它)
有没有一种方法可以确保它始终位于拇指中心上方?
谢谢