Я сталкиваюсь с вопросом о том, как контролировать прогресс Seekbar, когда пользователь ONLY касается Thumb
Я знал, что это дублированный вопрос, но вот ссылки, которые дали мне представление об этом это и это .
После нескольких раундов тестирования ниже приведены мои рабочие логики c результат
mySeekbar.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
Rect rcThumb = mySeekbar.getThumb().getBounds();
int iWidth = rcThumb.width();
if (event.getX() >= (rcThumb.left - iWidth) && event.getX() <= (rcThumb.right + iWidth)) {
return false;
} else
return true;
}
});
Ожидаемый результат
без перетаскивания или нажатия
![when released](https://i.stack.imgur.com/i5V2J.png)
во время перетаскивания или нажатия
Проблема
Вы можете просто скопировать и вставить приведенный выше код для тестирования. Поскольку мы знаем, что при прикосновении или перетаскивании большой палец будет больше, но есть проблема, когда большой палец будет большим, если не прикасаться к нему. Эта проблема случается не часто, но редко. В любом случае, чтобы решить это? Большая помощь приветствуется.
Результат задачи
без перетаскивания или нажатия
![when released](https://i.stack.imgur.com/BWu0u.png)
во время перетаскивания или нажатия