How it works 1. beginDelayedTransition() => Take a snapshot of ViewGroup 2. Update Views 3. On next layout pass, Android takes another snapshot and creates animations
Specifying shared elements makeSceneTransitionAnimation(activity, sharedView, transitionName); We specify pairs of Views and transition names. The sharedView is the original view in our current layout (the starting state)
Specifying shared elements makeSceneTransitionAnimation(activity, sharedView, transitionName); We specify pairs of Views and transition names. The sharedView is the original view in our current layout (the starting state) The viewTransitionName is the name of the corresponding view in the new layout (the ending state)
Support for <21 Specifying transitions The only place we need a version check if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { getWindow().setEnterTransition(new Fade()); }