Skip to content

Latest commit

 

History

History
94 lines (54 loc) · 4.4 KB

README.md

File metadata and controls

94 lines (54 loc) · 4.4 KB

Advanced & Practical MotionLayout

Talk given by Jason Pearson on May 22nd, 2019

Original Keynote Presentation

Speaker Deck

slides jason pearson

Demos I created for this talk

Derived ConstraintSets

Path Motion Arc

Wrap Content Header

Dynamic Photo Grid

Sliding Tile Puzzle

Hourglass

  • Each ConstraintSet denotes the various states of the hourglass while keeping the vertical or horizontal chain packed.
  • Some Constraints are specifying a pathMotionArc to get the curved path of motion.
  • ImageFilterView is used with a CustomAttribute property transition on crossfade to change how the sand appears.
  • A simple rotation transformation keeps both the glass and sand rotating along their respective paths.
  • The sand is constrained by the glass
  • KeyFrameSets adjust for alpha and rotation quirks to keep the ends of the animation from glitching
  • autoTransition starts the animation and keeps it going forever

RecyclerView + MotionLayout

ConstraintLayout 2.0 Release Notes

alpha 3

  • KeyTimeCycle
  • KeyTrigger
  • Gesture interactions can now drive seamless transitions
  • Sub Elements in Constraints

alpha 5

  • Derived Constraints
  • onSwipe Regions
  • AutoTransition

beta 1

  • Flow virtual Layout
  • onSwipe onTouchUp modes
  • visibilityMode

Relevant Google I/O 2019 Talks

Google I/O 2019 - What's new in ConstraintLayout

Nicholas Roard & John Hoford talk about what they've been working on in ConstraintLayout 2.0 and the features of the latest beta release.

Nick Butcher - Motional Intelligence

What makes animations great, the concepts of reentrant, continuous, and smooth.

Other sources that inspired or were mentioned in this talk

Beautiful animations using Android ConstraintLayout

Creating awesome animations using ConstraintLayout and ConstraintSet 

Build a Responsive UI with ConstraintLayout

onTouchUp with Mike Camell

Exploring MotionLayout: Touch Regions