Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.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_Dart_Flutter Layout - Fatal编程技术网

Flutter 颤振滑块直到其轨迹边缘才填充

Flutter 颤振滑块直到其轨迹边缘才填充,flutter,dart,flutter-layout,Flutter,Dart,Flutter Layout,当前代码: SliderTheme( data: SliderThemeData( trackHeight: 50, activeTrackColor: Colors.white, inactiveTrackColor: Colors.white54, thumbShape: RoundSliderThumbShape( enabledThumbRadius: 0, disabledThumbRadius: 0 ),

当前代码:

SliderTheme(
  data: SliderThemeData(
    trackHeight: 50,
    activeTrackColor: Colors.white,
    inactiveTrackColor: Colors.white54,
    thumbShape: RoundSliderThumbShape(
      enabledThumbRadius: 0, 
      disabledThumbRadius: 0
    ),
    thumbColor: Colors.white,
  ),
  child: Slider(
    min: 0.0,
    max: (duration!=null)
      ? duration.inMilliseconds.toDouble()
      : 0.0,
    divisions: (duration != null && !(duration.inMilliseconds==0))
      ? duration.inMilliseconds 
      : 1,// division cannot be zero, and null
    value: (this.mounted && position!=null )
      ? position.inMilliseconds.toDouble()
      : 0.0,
    onChanged: (index){
      audioPlayer.seek(Duration(
        milliseconds: index.toInt()
      )).then((x){});
    }
  ),
),
输出:

SliderTheme(
  data: SliderThemeData(
    trackHeight: 50,
    activeTrackColor: Colors.white,
    inactiveTrackColor: Colors.white54,
    thumbShape: RoundSliderThumbShape(
      enabledThumbRadius: 0, 
      disabledThumbRadius: 0
    ),
    thumbColor: Colors.white,
  ),
  child: Slider(
    min: 0.0,
    max: (duration!=null)
      ? duration.inMilliseconds.toDouble()
      : 0.0,
    divisions: (duration != null && !(duration.inMilliseconds==0))
      ? duration.inMilliseconds 
      : 1,// division cannot be zero, and null
    value: (this.mounted && position!=null )
      ? position.inMilliseconds.toDouble()
      : 0.0,
    onChanged: (index){
      audioPlayer.seek(Duration(
        milliseconds: index.toInt()
      )).then((x){});
    }
  ),
),
值=最小值

值=最大值

问题

SliderTheme(
  data: SliderThemeData(
    trackHeight: 50,
    activeTrackColor: Colors.white,
    inactiveTrackColor: Colors.white54,
    thumbShape: RoundSliderThumbShape(
      enabledThumbRadius: 0, 
      disabledThumbRadius: 0
    ),
    thumbColor: Colors.white,
  ),
  child: Slider(
    min: 0.0,
    max: (duration!=null)
      ? duration.inMilliseconds.toDouble()
      : 0.0,
    divisions: (duration != null && !(duration.inMilliseconds==0))
      ? duration.inMilliseconds 
      : 1,// division cannot be zero, and null
    value: (this.mounted && position!=null )
      ? position.inMilliseconds.toDouble()
      : 0.0,
    onChanged: (index){
      audioPlayer.seek(Duration(
        milliseconds: index.toInt()
      )).then((x){});
    }
  ),
),
  • 最小值时,轨迹前有一个白色层
  • 在“最大值”下,滑块不会一直填充到边
所需输出

  • 最小值处无白色层,填充值直到边缘

恐怕,使用默认的颤振滑块不可能做到这一点。也许像这样的第三方滑杆可以做到这一点。我在玩弄所有的选项,得出了与上面用户相同的结论。使用
滑块
小部件似乎不可能做到这一点。