Ich möchte einen dynamischen Bereichsschieberegler erstellen, bei dem ich die Werte (Min, Max und Divisionen) des Bereichsschiebereglers aktualisiere, indem ich eine Dropdown-Schaltfläche auswähle. Gibt es Beispiele dafür? Im Internet habe ich keine gefunden. Vielen Dank!
Lösung des Problems
Sie können das Aktien- RangeSlider
Widget und die niedrigen und hohen Werte als Zustände verwenden. Sie können diese Werte dann in a ändern setState((){})
und der Schieberegler wird entsprechend aktualisiert.
Hier ist ein Beispiel, in dem FloatingActionButton
die Werte auf 4 und 6 gesetzt werden:
class _MyHomePageState extends State<MyHomePage> {
static const min = 0.0;
static const max = 10.0;
double low = min;
double high = max;
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
RangeSlider(
min: min,
max: max,
values: RangeValues(low, high),
onChanged: (values) => setState((){
low = values.start;
high = values.end;
}),
),
],
),
),
floatingActionButton: FloatingActionButton(
onPressed: () => setState((){
low = 4;
high = 6;
}),
child: Icon(Icons.add),
),
);
}
}
Keine Kommentare:
Kommentar veröffentlichen