Я изменяю пользовательский интерфейс приложения openHAB для Android. Образец того, чего я пытался достичь, был приведен ниже.
Обратите внимание на ширину индикатора выполнения и положение бегунка. Большой палец будет двигаться только до края индикатора выполнения. Для выполнения этой работы я использовал метод setThubOffset() в SeekBar с отрицательным значением смещения, и смещение работает при перемещении большого пальца.
Когда значение прогресса изменяется, значение прогресса будет отправлено на сервер, и с ответом от сервера ListView обновится с помощью вызова notifyDataSetChanged(), прогресс SeekBar будет изменен, на этот раз положение большого пальца изменится, и он переместится вне диапазона индикатора выполнения. Не знаю, почему большой палец движется наружу, хотя смещение отрицательное.
Исходный код такой
public View getView(int position, View convertView, ViewGroup parent) {
....
sliderSeekBar.setThumbOffset(-15);
....
sliderSeekBar.setProgress(...);
....
}
Может кто-нибудь сказать, что может быть не так?