UzMbApps
07/12/2025, 5:38 AMfun fadeThroughAnimator(
animationSpec: FiniteAnimationSpec<Float> = tween(220),
minAlpha: Float = 0f,
minScale: Float = 0.92f,
): StackAnimator = stackAnimator(animationSpec = animationSpec) { factor, direction, content ->
if (direction.isEnter) {
val alpha = getFadeAlpha(factor, minAlpha)
val scale = 1f - abs(factor) * (1f - minScale)
content(
Modifier
.alpha(alpha)
.scale(scale)
)
}
}
//....
Scaffold(...
content = { innerPadding ->
Children(
modifier = Modifier.fillMaxSize().padding(innerPadding),
stack = stack,
animation = stackAnimation(fadeThroughAnimator())
) { child ->
Hi Arkadii, I'm facing a small issue... the fadeThroughAnimator animation works just as I want, but it doesn't keep the screen state. How can I fix that?
Arkadii Ivanov
07/12/2025, 7:29 AMcontent
under a condition. It should be always called. You can refer to the predefined animators in the library.