Skip to main content
AnimateProps defines the set of properties that EaseView can animate. All properties are set as flat values — there is no transform array like in standard React Native styles. Properties not specified in animate default to their identity values (the value that produces no visible change — 0 for translations, 1 for scale, etc.).

Type definition

Properties

number
default:"1"
View opacity. Accepts values from 0 (fully transparent) to 1 (fully opaque).
number
default:"0"
Horizontal translation in density-independent pixels. Positive values move the view right; negative values move it left.
number
default:"0"
Vertical translation in density-independent pixels. Positive values move the view down; negative values move it up.
number
default:"1"
Uniform scale factor applied to both axes. 1 is normal size, 0.5 is half size, 2 is double size.This is a shorthand that sets both scaleX and scaleY. If scaleX or scaleY is also provided, those values override scale for their respective axis.
number
default:"1"
Horizontal scale factor. Overrides scale for the X axis when both are specified.
number
default:"1"
Vertical scale factor. Overrides scale for the Y axis when both are specified.
number
default:"0"
Z-axis rotation in degrees. Positive values rotate clockwise.
number
default:"0"
X-axis rotation in degrees (3D perspective flip around the horizontal axis). Positive values tip the top of the view away from the viewer.
number
default:"0"
Y-axis rotation in degrees (3D perspective flip around the vertical axis). Positive values tip the right side of the view away from the viewer.
number
default:"0"
Border radius in pixels. Uses hardware-accelerated clipping — ViewOutlineProvider + clipToOutline on Android and layer.cornerRadius + layer.masksToBounds on iOS. Children are clipped to the rounded bounds.Unlike React Native’s style-based borderRadius (which uses a Canvas drawable on Android), this clips children correctly and is GPU-accelerated.When borderRadius is in animate, any borderRadius in style is automatically stripped to avoid conflicts.
ColorValue
Background color. Accepts any React Native color value — hex strings, named colors, rgb(), rgba(), etc.When backgroundColor is in animate, any backgroundColor in style is automatically stripped to avoid conflicts.
On Android, backgroundColor animation uses ValueAnimator.ofArgb() which only supports timing transitions. If the active transition is type: 'spring', it silently falls back to timing with the default duration. On iOS, both timing and spring transitions work for background color.

Full example

Identity defaults

Properties omitted from animate use their identity values:

scale shorthand behavior

scale is a convenience shorthand. When only scale is specified, it applies equally to both axes:
When scale and an explicit scaleX or scaleY are both provided, the explicit value wins for that axis:
  • EaseView — the component that accepts animate and initialAnimate
  • Transition — control the animation curve