address code review comments

pull/118/head
John Ryan 6 years ago
parent 576a33b26b
commit 7a5b58b65c

@ -1,12 +1,31 @@
# Animation Samples
Sample apps that showcasing Flutter's animation features
## Basics
## Goals
- Demonstrate the building blocks for animations and how they work together
- Provide samples for common patterns and use-cases
## Samples
### Basics
Building blocks and patterns
**AnimationControllerDemo**
Demonstrates how to use an `AnimationController`.
### Misc
Other uses-cases and examples
## Misc
**ExpandCard**
**ExpandCardDemo**
Demonstrates how to use `AnimatedCrossFade` to fade between two widgets and
change the size.
## Other Resources
- [Introduction to animations](https://flutter.dev/docs/development/ui/animations)
- [Animation widgets](https://flutter.dev/docs/development/ui/widgets/animation)
- [Flutter cookbook - Animations](https://flutter.dev/docs/cookbook/animation)
- [Animations tutorial](https://flutter.dev/docs/development/ui/animations/tutorial)

@ -2,40 +2,39 @@ import 'package:flutter/material.dart';
import 'src/basics/animation_controller_demo.dart';
import 'src/misc/expand_card.dart';
void main() => runApp(AnimationsSamples());
void main() => runApp(AnimationSamples());
class Demo {
final String name;
final String route;
final WidgetBuilder builder;
Demo(this.name, this.route, this.builder);
const Demo(this.name, this.route, this.builder);
}
List<Demo> basicDemos = [
final basicDemos = [
Demo('Animation Controller', AnimationControllerDemo.routeName,
(context) => AnimationControllerDemo()),
];
List<Demo> miscDemos = [
final miscDemos = [
Demo('Expandable Card', ExpandCardDemo.routeName,
(context) => ExpandCardDemo()),
];
Map<String, WidgetBuilder> basicDemoRoutes = Map.fromEntries(
basicDemos.map((d) => MapEntry(d.route, d.builder)));
final basicDemoRoutes =
Map.fromEntries(basicDemos.map((d) => MapEntry(d.route, d.builder)));
Map<String, WidgetBuilder> miscDemoRoutes = Map.fromEntries(
miscDemos.map((d) => MapEntry(d.route, d.builder)));
final miscDemoRoutes =
Map.fromEntries(miscDemos.map((d) => MapEntry(d.route, d.builder)));
Map<String, WidgetBuilder> allRoutes = <String, WidgetBuilder>{
final allRoutes = <String, WidgetBuilder>{
...basicDemoRoutes,
...miscDemoRoutes,
};
class AnimationsSamples extends StatelessWidget {
class AnimationSamples extends StatelessWidget {
Widget build(BuildContext context) {
return MaterialApp(
title: 'Animations Samples',
theme: ThemeData(
@ -48,19 +47,19 @@ class AnimationsSamples extends StatelessWidget {
}
class HomePage extends StatelessWidget {
final TextStyle _headerStyle =
TextStyle(fontWeight: FontWeight.bold, fontSize: 24);
Widget build(BuildContext context) {
final headerStyle =
Theme.of(context).textTheme.title;
return Scaffold(
appBar: AppBar(
title: Text('Animation Examples'),
),
body: ListView(
children: <Widget>[
ListTile(title: Text('Basics', style: _headerStyle)),
children: [
ListTile(title: Text('Basics', style: headerStyle)),
...basicDemos.map((d) => DemoTile(d)),
ListTile(title: Text('Misc', style: _headerStyle)),
ListTile(title: Text('Misc', style: headerStyle)),
...miscDemos.map((d) => DemoTile(d)),
],
),

@ -33,18 +33,16 @@ class _AnimationControllerDemoState extends State<AnimationControllerDemo>
body: Center(
child: Column(
mainAxisSize: MainAxisSize.min,
children: <Widget>[
children: [
ConstrainedBox(
constraints: BoxConstraints(maxWidth: 200),
child: Text('${controller.value.toStringAsFixed(2)}',
style: TextStyle(fontSize: 24)),
),
MaterialButton(
color: Theme.of(context).primaryColor,
child: Text(
'animate',
style: TextStyle(color: Colors.white),
'${controller.value.toStringAsFixed(2)}',
style: Theme.of(context).textTheme.display3,
),
),
RaisedButton(
child: Text('animate'),
onPressed: () {
if (controller.status == AnimationStatus.completed) {
controller.reverse();

@ -1,7 +1,7 @@
import 'package:flutter/material.dart';
class ExpandCardDemo extends StatelessWidget {
static String routeName = '/expand_card';
static const String routeName = '/expand_card';
Widget build(BuildContext context) {
return Scaffold(
@ -24,10 +24,6 @@ class _ExpandCardState extends State<ExpandCard>
double get size => expanded ? 200 : 100;
void initState() {
super.initState();
}
void toggleExpanded() {
setState(() {
expanded = !expanded;

Loading…
Cancel
Save