Как сделать Slider с разными шагами?

Работаю с библиотекой com.google.android.material. Нужно реализовать slider в таком виде:

введите сюда описание изображения

Как можно реализовать шаг различной длины с установкой значения Continuous в качестве максимального?


Ответы (1 шт):

Автор решения: Barmaley

Мне кажется можно немного "обмануть" юзера. А именно сделать обычный дискретный Slider и перегрузить метод setLabelFormatter(), который бы отображал нужный вам текст метки, типа:

<com.google.android.material.slider.RangeSlider
    ...
    android:valueFrom="0.0"
    android:valueTo="100.0"
    android:stepSize="10.0"  />

Далее:

slider.setLabelFormatter(new Slider.LabelFormatter() {
    @NonNull
    @Override
    public String getFormattedValue(float value) {
        switch((int )value) {
           case 0:
              return "2";
           case 100:
              return "Continious";
           //blah-blah
        }
    }
});
→ Ссылка