Необходимо установить цвет отключенного состояния для seekbar - PullRequest
0 голосов
/ 11 ноября 2019

Я пытаюсь динамически установить цветовое состояние SeekBar для отключенных и включенных состояний, но это не работает. Мне нужно использовать progressDrawable, так как у меня есть особые требования к толщине и радиусу панели поиска.

Вот что я попробовал:

Создал два списка слоев, один для включенного состояния, а другой для отключенного,И создал селектор для переключения между ними. Установка этого параметра в progressDrawable заполнила всю панель поиска.

<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_enabled="false"
    android:drawable="@drawable/seekbar_progress_line_disabled"/>
  <item android:drawable="@drawable/seekbar_progress_line_enabled"/>
</selector>

Второй подход, который я пробовал, состоял в том, чтобы отменить выбор состояния и установить рисование с помощью кода.

mSbVideoScrubber.setProgressDrawable(shouldEnable ? 
   context.getDrawable(R.drawable.seekbar_progress_line_enabled) :
   context.getDrawable(R.drawable.seekbar_progress_line_disabled));

Это, похоже, сработало, но индикатор выполнения панели поиска (без значка большого пальца) перескочил в начало координат, что было странно.

SeekBar jumps to origin

Любая помощь приветствуется.

...