Skip to main content

API reference

<EaseView>

A View that animates property changes using native platform APIs.

PropTypeDescription
animateAnimatePropsTarget values for animated properties
initialAnimateAnimatePropsStarting values for enter animations
transitionTransitionSingle config or per-property map
onTransitionEnd(event) => voidCalled when all animations complete with { finished: boolean }
transformOrigin{ x?: number; y?: number }Pivot point for scale/rotation as 0–1 fractions
transformPerspectivenumberCamera distance for 3D transforms (rotateX, rotateY). Default: 1280
useHardwareLayerbooleanAndroid only — rasterize to GPU texture during animations
classNamestringNativeWind / Uniwind / Tailwind CSS class string
styleViewStyleNon-animated styles
childrenReactNodeChild elements
...restViewPropsAll other standard View props

AnimateProps

PropertyTypeDefaultDescription
opacitynumber1View opacity (0–1)
translateXnumber0Horizontal translation in pixels
translateYnumber0Vertical translation in pixels
scalenumber1Uniform scale factor
scaleXnumber1Horizontal scale factor
scaleYnumber1Vertical scale factor
rotatenumber0Z-axis rotation in degrees
rotateXnumber0X-axis rotation in degrees
rotateYnumber0Y-axis rotation in degrees
borderRadiusnumber0Border radius in pixels
backgroundColorColorValue'transparent'Background color
borderWidthnumber0Border width in pixels
borderColorColorValue'black'Border color
shadowOpacitynumber0Shadow opacity 0–1 (iOS only)
shadowRadiusnumber0Shadow blur radius (iOS only)
shadowColorColorValue'black'Shadow color (iOS only)
shadowOffsetobject{width:0,height:0}Shadow offset { width, height } (iOS only)
elevationnumber0Material shadow elevation (Android only)

TimingTransition

{
type: 'timing';
duration?: number;
easing?: EasingType;
delay?: number;
loop?: 'repeat' | 'reverse';
}

SpringTransition

{
type: 'spring';
damping?: number;
stiffness?: number;
mass?: number;
delay?: number;
}

NoneTransition

{
type: 'none';
}

Applies values instantly with no animation.

TransitionMap

A per-property map that applies different transition configs to different property categories.

KeyProperties
defaultFallback for categories not explicitly listed
transformtranslateX, translateY, scaleX, scaleY, rotate, rotateX, rotateY
opacityopacity
borderRadiusborderRadius
backgroundColorbackgroundColor
borderborderWidth, borderColor
shadowshadowOpacity, shadowRadius, shadowColor, shadowOffset, elevation

Hardware layers (Android)

Setting useHardwareLayer rasterizes the view into a GPU texture for the duration of the animation.

<EaseView animate={{ opacity: isVisible ? 1 : 0 }} useHardwareLayer />

Trade-offs:

  • Faster rendering for opacity, scale, and rotation animations.
  • Uses additional GPU memory for the off-screen texture.
  • Overflowing children are clipped by the texture.