не наезжали друг на друга в rangeSlider, или как это загуглить хотя бы можно?
Тут 2 варика нелинейный скролл, или линейный но между кружками мин расстояние указываешь
А как мин расстояние указать можно?
в текущем проекте пользуюсь рендж слайдером, походу - никак. кроме как ручками в чендж лисене смотреть, чтобы разница между велью была больше чем твой степ
Бля, печально. Очень странно что эта фича не работает(
если найдешь пиши, но я так пробежался по методам, ничего не нашёл, но я могу и ошибаться) удачи
Есть minSeparation, и по докам написано, что указывает мин расстояние между кружками, но на деле не работает
а ты что там указал?
Пробовал указывать флоаты, и дп, но ни то, ни другое не помогло
Хмммм, можно попробовать. Ща гляну
попробуй в коде вызвать
да, тоже самое)
Что нужно указывать согласно документации?
через код пишет, что флоаты, через xml - дп или другие похожие форматы
Так не бывает. Параметр должен иметь конкретные единицы измерения.
Бывает))) это как ставить марджины программно для frame layout, просит инты дп, а на деле нужно пиксели из флоута
Естественно, в хмл дп, а в коде - дп, преобразованные в пиксели. А не просто 10 или 1000 😁
Это да, только метод назывался setMarginsDp
А как вы это делаете? Условно берем макс значение слайдера, вычитываем из него мин значение, и если оно меньше чем степсайз, то выключаем ренджслайдер? И при каком условии тогда его включать?
я пока никак, сейчас попробую. макс-мин < stepSize, то тогда какой слайдер придется подвинуть
Не понял. Всм какой подвинуть?
решил?
var prevRangeValues : List<Float> = ArrayList() binding.ageSlider.addOnChangeListener { slider, value, fromUser -> if(!fromUser){ return@addOnChangeListener } val low : Float? = slider.values.firstOrNull() val up : Float? = slider.values.lastOrNull() if(low == up){ slider.values = prevRangeValues return@addOnChangeListener }else{ prevRangeValues = slider.values } //TODO your moves }
еее, работает. Спс большое
а ты убрал ripple эффект от него? а то он лагает немного, переключается на другой thumb когда 1 степсайз остается
Та я видел, ну что поделать, мое решение считай костыль, чтобы избежать, нужно глубже идти
Обсуждают сегодня