mik*_*ssy 4 rangeslider dart flutter flutter-layout
我正在尝试让基本的 RangeSlider 与显示标签开始结束范围的标签一起使用。下面是您可以做的最简化的...包含滑块的容器。由于某种原因,标签没有出现?我看过其他示例,这应该是微不足道的,但无法弄清楚为什么它不显示标签?这可能是一个错误吗?
class _TestScreenState extends State<TestScreen> {
RangeValues _values = RangeValues(15, 30);
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Testing formatting'),
),
body: Container(
child: RangeSlider(
values: _values,
min:1,
max: 60,
labels: RangeLabels('${_values.start.round()}', '${_values.end.round()}'),
onChanged: (RangeValues values) {
setState(() {
_values = values;
});
},
),
),
drawer: SideDrawer(),
);
Run Code Online (Sandbox Code Playgroud)
}
更新:弄清楚了,不确定是否是默认的,但我需要指定一个 SliderTheme,然后在 sliderTheme 内,提供 SlideThemeData 并将 showvalueindicator 设置为 showvalueIndactor.always。然后它开始出现。
您可以通过以下方法实现相同的目标
SliderTheme(
data: SliderThemeData(
showValueIndicator: ShowValueIndicator.always
),
child: RangeSlider(
values: _values,
min: 0,
max: 1000,
labels: RangeLabels('${_values.start.round()}', '${_values.end.round()}'),
inactiveColor: Colors.grey,
activeColor: Colors.black,
onChanged: (RangeValues values) {
setState(() {
_values = values;
});
},
),
);
Run Code Online (Sandbox Code Playgroud)
这里 _values 是 State 类中定义的 RangeValues,如下所示
class _FilterScreenState extends State<FilterScreen>{
RangeValues _values = RangeValues(100, 900);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2561 次 |
| 最近记录: |