Использование нового слайдера материального дизайна com.google.android.material.slider.Slider. Документация по нему довольно скудная, так как она была выпущена совсем недавно. Пытаюсь получить значение от слайдера, но пока безуспешно. Другими словами, что было бы эквивалентом слайдера setOnProgressChanged { } из Seekbar.
com.google.android.material.slider.Slider
setOnProgressChanged { }
Slider slider = findViewById(R.id.slider); slider.addOnSliderTouchListener(touchListener);
Затем
private final OnSliderTouchListener touchListener = new OnSliderTouchListener() { @Override public void onStartTrackingTouch(Slider slider) { } @Override public void onStopTrackingTouch(Slider slider) { } };
Подробнее см. SliderMainDemoFragment.java
SliderMainDemoFragment.java
Для получения обновлений значений вы можете использовать Slider.OnChangeListener:
Slider.OnChangeListener
val slider = Slider(requireContext()) slider.addOnChangeListener { slider, value, fromUser -> /* `value` is the argument you need */ } // the same implementation with interface name // slider.addOnChangeListener(Slider.OnChangeListener { slider, value, fromUser -> })
Примеры реализации слайдера из официального репозитория компонентов материалов .
Вы можете использовать OnChangeListener слушатель
OnChangeListener
slider.addOnChangeListener(new Slider.OnChangeListener() { @Override public void onValueChange(@NonNull Slider slider, float value, boolean fromUser) { //Use the value } });