Let’s edit FAB Theme
● Using Theme Widget
● Using Theme.of(context).copyWith()
Slide 19
Slide 19 text
Let’s edit Body Theme
● Using Theme Widget
● Using Theme.of(context).copyWith()
Slide 20
Slide 20 text
No content
Slide 21
Slide 21 text
Let’s understand
Animation
Slide 22
Slide 22 text
Feedback Status User education
Slide 23
Slide 23 text
Types of Animation
Kolkata
Tween-Based
Animations
Physics-Base
d Animations
models path between
points A & B by a
transform T based on
range & timing
models real-world
behaviors like
velocity, mass,
friction, momentum
etc.
Slide 24
Slide 24 text
Tween-Based Animations / Default Type
Kolkata
Duration of Animation
Value of Animation
Upper
Bound
Value
Lower
Bound
Value
Linear
Animation
Completed
Forward
Slide 25
Slide 25 text
Tween-Based Animations / Curve Type
Kolkata
Duration of Animation
Value of Animation
Upper
Bound
Value
Lower
Bound
Value
non-Linear
Animation
Dismissed
Completed
Slide 26
Slide 26 text
Different Curve Types
Kolkata
Slide 27
Slide 27 text
How animation works?
Slide 28
Slide 28 text
Build
Layout
Paint
Animate
Tick animations to change widget state
Rebuild widgets to account for state changes
Update size and position of render objects
Vsync
GPU
Record display lists for composited layers
Layer Tree
Slide 29
Slide 29 text
Key Animation classes
Slide 30
Slide 30 text
AnimationController
Kolkata
● An animation itself
● Play-Stop-Reverse-Repeat-Reset-Resume
● AnimateTo-AnimateWith-Fling
● Duration and Value
Slide 31
Slide 31 text
Animation
Kolkata
● Animation Status
● Animation Value
● AddListener
● AddStatusListener
● AnimateTo-AnimateWith-Fling
● Duration and Value
Slide 32
Slide 32 text
ImplicitlyAnimatedWidget
Kolkata
● No Animation object needed
● Automatically interpolate
and animate
● You can change the Curve
and Duration
● AnimatedAlign
● AnimatedContainer
● AnimatedDefaultTextStyle
● AnimatedOpacity
● AnimatedPadding
● AnimatedPhysicalModel
● AnimatedPositioned
● AnimatedPositionedDirectional
● AnimatedTheme