Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 颤振范围滑块-标签始终显示在轨迹栏上方_Flutter_Slider_Flutter Layout - Fatal编程技术网

Flutter 颤振范围滑块-标签始终显示在轨迹栏上方

Flutter 颤振范围滑块-标签始终显示在轨迹栏上方,flutter,slider,flutter-layout,Flutter,Slider,Flutter Layout,我使用的是RangeSloider小部件,而不是在滑动时显示所选的值。我希望在轨迹栏上方显示我的主刻度值。目前我提出的唯一解决方案是在我的滑块上方放置一个行的文本小部件,但是值和标签没有正确对齐 我的代码 final\u滑块标签=[ “Bac”, “Bac+2”, “Bac+3”, “Bac+4”, “Bac+5”, “>Bac+5” ]; 小部件_buildSlider(){ 返回列( 儿童:[ _buildLabel(“Niveaux détudes”), 尺寸箱(高度:10), 划船( m

我使用的是
RangeSloider
小部件,而不是在滑动时显示所选的值。我希望在轨迹栏上方显示我的主刻度值。目前我提出的唯一解决方案是在我的滑块上方放置一个
文本
小部件,但是值和标签没有正确对齐

我的代码

final\u滑块标签=[
“Bac”,
“Bac+2”,
“Bac+3”,
“Bac+4”,
“Bac+5”,
“>Bac+5”
];
小部件_buildSlider(){
返回列(
儿童:[
_buildLabel(“Niveaux détudes”),
尺寸箱(高度:10),
划船(
mainAxisAlignment:mainAxisAlignment.space,
儿童:[
图((e)=>Text(e)),
],
),
幻灯片主题(
数据:SliderThemeData(
showValueIndicator:showValueIndicator.never,
拇指颜色:颜色。蓝色,
轨道高度:2,
activeTrackColor:Colors.blue,
颜色:颜色。灰色,
),
孩子:StreamBuilder(
流:_onSliderValuesChanged,
构建器:(\uux,快照){
如果(!snapshot.hasData)返回容器();
返回范围滑块(
一旦更改:(值)=>\u sliderValuesController.sink.add(值),
分:0,,
max:_sliderLabels.length.toDouble(),
分段:_sliderLabels.length,
值:snapshot.data,
);
},
),
),
],
);
}
图片

如您所见,标签
Bac+5
未与我的拇指对齐


你有什么建议吗?

使用
mainAxisAlignment:mainAxisAlignment.spaceBetween
它稍微好一点,但仍然没有完全对齐。这可能是因为相对于滑块上“点”的大小,文本太长了。删除“BAC”前缀是否可以,只保留“+ 2”、“+ 3”等等?是的,我也想过这个问题,但不幸的是,我不能减少标签……也许你可以考虑使用另一个控件(例如一对DoPrdOn)。