Skip to main content
By default, a single transition config applies to all animated properties. When you need finer control — for example, a snappy spring for movement but a quick fade for opacity — pass a TransitionMap instead of a single config. A TransitionMap maps property categories to individual transition configs:

Category keys

Using default as a fallback

When a category is not listed in the map, the library falls back to the default key. If no default key is present either, the library default (timing 300ms easeInOut) applies.
In this example, scale and translateY (both in the transform category) use the spring defined under default. opacity uses its own timing config.

When to use per-property vs a single config

On Android, backgroundColor is animated with ValueAnimator.ofArgb(), which only supports timing transitions. If you specify type: 'spring' for the backgroundColor key, it silently falls back to timing with a 300ms duration.