2017 DevFestMN David Perez & Collin Flynn
summary
Builds a tiny touch state struct that records down, last move, and distance and runs in a stateless view; implements springy settle and tension by animating that distance with ValueAnimator + PathMeasure to follow a quadratic Bezier path; introduces resistance by warping the distance function; draws with Canvas clipPath and path directions; manipulates images by reading and writing raw pixels with getPixels/setPixels bitmap move; demos compile and produce the described elastic, draggable UI and are on the repo.
AI-written summary · about
chapters (26)
- 0:00Touch event handling
- 1:04Android touch system resources
- 2:12Motion event properties
- 3:54Coordinates in views
- 5:10Storing touch state
- 6:56Touch state tracker
- 8:04Visualizing touch state
- 10:59Elastic touch animations
- 12:47Settle animations after touch
- 14:56PathMeasure anchor animations
- 18:30Tension effects in animations
- 21:50Touch processing example
- 22:47Q&A
- 23:07Android drawing layers
- 25:12Canvas API fundamentals
- 26:17Canvas methods and coordinates
- 27:20Canvas clipping operations
- 29:09Drawing rectangles and shapes
- 30:33Clipping examples
- 32:00Drawing circles and paths
- 34:51Advanced clipping with PathDirection
- 36:37Clipping layering for designs
- 38:25Opacity animation with colors
- 39:53Bitmap and pixel manipulation
- 42:45Moving pixels on touch
- 46:51Bitmap manipulation demo
related talks
39mAdvanced & Practical MotionLayout
35mMotional Intelligence: Build smarter animations
36mPractical Magic with Animations in Compose
38mIn a World of Pure Android Animation 🍭🍫
57mU and I
36mJetpack Compose: Drawing without pain and recomposition
41mGraphics for Android Developers, Part Deux
36mPractical implementations of powerful UI expressions using Jetpack Compose
