Enabled and disabled states in Flutter Range Slider (SfRangeSlider)
30 Mar 202313 minutes to read
This section helps to learn about the enabled and disabled state in the Flutter range slider.
Enabled state
The range slider will be in enabled state if onChanged
is set.
Horizontal
SfRangeValues _values = SfRangeValues(3.0, 7.0);
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: Center(
child: SfRangeSlider(
min: 0.0,
max: 10.0,
values: _values,
onChanged: (SfRangeValues newValues) {
setState(() {
_values = newValues;
});
},
)
)
)
);
}
Vertical
SfRangeValues _values = SfRangeValues(3.0, 7.0);
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: Center(
child: SfRangeSlider.vertical(
min: 0.0,
max: 10.0,
values: _values,
onChanged: (SfRangeValues newValues) {
setState(() {
_values = newValues;
});
},
)
)
)
);
}
Disabled state
The range slider will be in disabled state if onChanged
is null
.
Horizontal
SfRangeValues _values = SfRangeValues(3.0, 7.0);
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: Center(
child: SfRangeSlider(
min: 0.0,
max: 10.0,
values: _values,
onChanged: null,
)
)
)
);
}
Vertical
SfRangeValues _values = SfRangeValues(3.0, 7.0);
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: Center(
child: SfRangeSlider.vertical(
min: 0.0,
max: 10.0,
values: _values,
onChanged: null,
)
)
)
);
}
Disabled color
You can change,
- The color of the active and inactive track in disabled state using the
disabledActiveTrackColor
anddisabledInactiveTrackColor
properties. - The color of the active and inactive major ticks in disabled state using the
disabledActiveTickColor
anddisabledInactiveTickColor
properties. - The color of the active and inactive minor ticks in disabled state using the
disabledActiveMinorTickColor
anddisabledInactiveMinorTickColor
properties. - The color of the active and inactive dividers in disabled state using the
disabledActiveDividerColor
anddisabledInactiveDividerColor
properties. - The color of the thumb in disabled state using the
disabledThumbColor
property.
NOTE
You must import the
theme.dart
library from theCore
package to useSfRangeSliderTheme
.
Horizontal
SfRangeValues _values = SfRangeValues(4.0, 8.0);
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: Center(
child: SfRangeSliderTheme(
data: SfRangeSliderThemeData(
disabledActiveTrackColor: Colors.orange,
disabledInactiveTrackColor: Colors.orange[200],
disabledActiveTickColor: Colors.orange,
disabledInactiveTickColor: Colors.orange[200],
disabledActiveMinorTickColor: Colors.orange,
disabledInactiveMinorTickColor: Colors.orange[200],
disabledActiveDividerColor: Colors.purple,
disabledInactiveDividerColor: Colors.purple[200],
disabledThumbColor: Colors.orange,
),
child: SfRangeSlider(
min: 2.0,
max: 10.0,
interval: 2,
showTicks: true,
minorTicksPerInterval: 1,
showDividers: true,
values: _values,
onChanged: null,
),
)
)
)
);
}
Vertical
SfRangeValues _values = SfRangeValues(4.0, 8.0);
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
body: Center(
child: SfRangeSliderTheme(
data: SfRangeSliderThemeData(
disabledActiveTrackColor: Colors.orange,
disabledInactiveTrackColor: Colors.orange[200],
disabledActiveTickColor: Colors.orange,
disabledInactiveTickColor: Colors.orange[200],
disabledActiveMinorTickColor: Colors.orange,
disabledInactiveMinorTickColor: Colors.orange[200],
disabledActiveDividerColor: Colors.purple,
disabledInactiveDividerColor: Colors.purple[200],
disabledThumbColor: Colors.orange,
),
child: SfRangeSlider.vertical(
min: 2.0,
max: 10.0,
interval: 2,
showTicks: true,
minorTicksPerInterval: 1,
showDividers: true,
values: _values,
onChanged: null,
),
)
)
)
);
}