1
0
mirror of https://github.com/flutter/samples.git synced 2025-11-08 22:09:06 +00:00

next_gen_ui_demo: Dispose of old AnimationControllers (#1852)

This commit is contained in:
Brett Morgan
2023-05-30 12:15:45 +10:00
committed by GitHub
parent 7100438182
commit 6c31477626
7 changed files with 67 additions and 12 deletions

View File

@@ -74,7 +74,17 @@ List<
typedef ColorCallback = void Function(Color colorSchemeSeed);
class _NextGenAppState extends State<NextGenApp> {
int step = 0;
int _step = 0;
int get step => _step;
set step(int i) {
_step = switch (i) {
(int a) when a < 0 => 0,
(int a) when a >= steps.length => steps.length - 1,
_ => i,
};
debugPrint('Step ${step + 1} of ${steps.length}');
}
Color? colorSchemeSeed;
@override
@@ -107,8 +117,7 @@ class _NextGenAppState extends State<NextGenApp> {
child: const Icon(Icons.arrow_back),
onPressed: () {
setState(() {
if (step > 0) step--;
debugPrint('Step = $step');
step--;
});
},
),
@@ -123,8 +132,7 @@ class _NextGenAppState extends State<NextGenApp> {
child: const Icon(Icons.arrow_forward),
onPressed: () {
setState(() {
if (step + 1 < steps.length) step++;
debugPrint('Step = $step');
step++;
});
},
),
@@ -140,7 +148,6 @@ class _NextGenAppState extends State<NextGenApp> {
onPressed: () {
setState(() {
step = 0;
debugPrint('Step = $step');
});
},
),