我想在我的范围滑块上显示0到300,但只允许用户在80到300之间进行选择
RangeSlider(
min: 0.0,
max: 300.0,
divisions: 10,
labels: RangeLabels(
_startValue.round().toString(),
_endValue.round().toString(),
),
values: RangeValues(_startValue, _endValue),
onChanged: (values) {
setState(() {
_startValue = values.start;
_endValue = values.end;
});
},
)
您可以检查onChanged
的起始值,并阻止用户进入<80
onChanged: (values) {
if (values.start < 80) return;
setState(() {
_startValue = values.start;
_endValue = values.end;
});
},
您可以直接导入import 'dart:math';
然后用min
和max
功能限制的值:
onChanged: (values) {
setState(() {
_startValue = max(values.start, 80);
_endValue = min(values.end, 250); // If you also want to limit the upper value
});
},
实际上,您可以使用if..else来实现。
onChanged: (value) {
if((value)<=80){
setState(() {
_startValue = 80;
});
}
},