Flutter Slider – onChangeEnd

Flutter Slider onChangeEnd

onChangeEnd property of Slider takes a function, and is called only when selecting a value from slider is completed.

Sample Code

The callback function receives the initial value of the slider when the change has stopped.

Slider(
  onChangeEnd: (double value) {
    //some code
  },
),

Example

Flutter Application with a Slider widget.

We display the value received by onChangeEnd of slider in a Text widget.

main.dart

import 'package:flutter/material.dart';

void main() => runApp(const MyApp());

/// main application widget
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);

static const String _title = 'Flutter Application';

@override
Widget build(BuildContext context) {
return MaterialApp(
title: _title,
home: Scaffold(
appBar: AppBar(title: const Text(_title)),
body: const MyStatefulWidget(),
),
);
}
}

/// stateful widget that the main application instantiates
class MyStatefulWidget extends StatefulWidget {
const MyStatefulWidget({Key? key}) : super(key: key);

@override
State<MyStatefulWidget> createState() => _MyStatefulWidgetState();
}

/// private State class that goes with MyStatefulWidget
class _MyStatefulWidgetState extends State<MyStatefulWidget> {
double _currentSliderValue = 40;
double _startSliderValue = -1;
double _endSliderValue = -1;
@override
Widget build(BuildContext context) {
return Center(
child: Column(
children: <Widget>[
Slider(
value: _currentSliderValue,
min: 0,
max: 100,
divisions: 100,
label: _currentSliderValue.round().toString(),
onChanged: (double value) {
setState(() {
_currentSliderValue = value;
});
},
onChangeStart: (double value) {
setState(() {
_startSliderValue = value;
});
},
onChangeEnd: (double value) {
setState(() {
_endSliderValue = value;
});
},
),
Text('Starting Value : ' + _startSliderValue.round().toString()),
Text('Current Slider Value : ' + _currentSliderValue.round().toString()),
Text('Stop Value : ' + _endSliderValue.round().toString()),
],
),
);
}
}

Video

Desclaimer: We are not affiliated, associated, authorized, endorsed by, or in any way officially connected with the Google, Apple or Flutter, or any of its subsidiaries or its affiliates. The names Google, Apple and Flutter as well as related names, marks, emblems and images are registered trademarks of their respective owners. This site googleflutter.com covers tutorials related to Flutter developed by Google.