问题描述
这是我的范围滑块小部件实现,我想阻止用户滑动左拇指滑块
RangeSlider(
divisions: 5,activeColor: Colors.red[700],inactiveColor: Colors.grey,min: 1.0,max: 10.0,values: values,labels: labels,onChanged: (value) {
state(
() {
values = value;
labels = RangeLabels(
"${value.start.toInt().toString()}km","${value.end.toInt().toString()}km",);
},);
},),
解决方法
在您的 if (values.start != value.start) return;
中添加 onChanged
,这将阻止更新 values
,从而阻止更新 RangeSlider
来自@ikerfah 的评论有助于包含 if(values.start != value.start) return;在 onChanged 回调中
RangeSlider(
divisions: 5,activeColor: Colors.red[700],inactiveColor: Colors.grey,min: 1.0,max: 10.0,values: values,labels: labels,onChanged: (value) {
state(
() {
if (values.start != value.start) return;
values = value;
labels = RangeLabels(
"${value.start.toInt().toString()}km","${value.end.toInt().toString()}km",);
},);
},),