基本属性

  1. const Slider.adaptive({
  2. Key key,
  3. @required this.value, // 当前的数值
  4. @required this.onChanged, // 当用户通过拖动为滑块选择新值时,在拖动期间调用。滑块将新值传递给回调
  5. this.onChangeStart, //当用户开始为滑块选择新值时调用。这个回调函数不应该被用来更新滑块[value](使用[onChanged])
  6. this.onChangeEnd, //当用户开始为滑块选择新值时调用。这个回调函数不应该被用来更新滑块[value](使用[onChanged])
  7. this.min = 0.0, // 最小值
  8. this.max = 1.0, // 最大值
  9. this.divisions, // 离散除法的数目。通常与[label]一起使用,以显示当前的离散值。如果为空,滑动条是连续的。
  10. this.label, //当滑块处于活动状态时,在滑块上方显示的标签。
  11. this.activeColor, // 选择后的值颜色
  12. this.inactiveColor, // 未选中区域的颜色
  13. this.semanticFormatterCallback,
  14. }) : _sliderType = _SliderType.adaptive,
  15. assert(value != null),
  16. assert(min != null),
  17. assert(max != null),
  18. assert(min <= max),
  19. assert(value >= min && value <= max),
  20. assert(divisions == null || divisions > 0),
  21. super(key: key);

基本用法

  1. double _sliderValue = 10;
  2. Slider(
  3. value: _sliderValue,
  4. min: 0,
  5. max: 100,
  6. onChanged: (e){
  7. var num = double.parse( e.toString().split('.')[0] );
  8. setState(() {
  9. _sliderValue = num;
  10. });
  11. },
  12. divisions: 100,
  13. label: _sliderValue.toString(),
  14. activeColor: Colors.yellow[700],
  15. inactiveColor: Colors.green[500],
  16. )

image.pngimage.png

divisions设置比较小的时候,则是分段的,比如说max设置一百,则divisions设置为10,则就分时段,每次移动的时候就是移动一段的
image.png