markturnip
07/28/2024, 2:37 AManimateFloatAsState
in my modifier which works well for animating my view.
However I don’t want to animate changes when using a gesture since this creates a delayed appearance.
Is it possible to conditionally animate a state? or am I taking the wrong approach?
fun Modifier.expandable(
handler: MinimizableViewHandler,
settings: ExpandableSettings
): Modifier = composed {
val animatedDraggedDelta by animateFloatAsState(
targetValue = handler.draggedDelta,
)
Modifier
.padding(horizontal = 10 * (1.0 - handler.draggedDelta).dp)
.padding(bottom = settings.bottomPadding + (settings.expandedBottomPadding * handler.draggedDelta))
.height((settings.minimizedHeight.value + (handler.draggedDelta * (settings.maximizedHeight.value - settings.minimizedHeight.value))).dp)
.border(width = 1.dp, color = Color.White.copy(alpha = 1.0f - animatedDraggedDelta), shape = RoundedCornerShape((settings.cornerRadius.value - (20 * animatedDraggedDelta)).dp))
.clip(RoundedCornerShape((settings.cornerRadius.value - (20 * handler.draggedDelta)).dp))
}
ephemient
07/28/2024, 3:55 AMmarkturnip
07/28/2024, 10:13 AMsnapTo(targetValue
to update without animationmarkturnip
07/28/2024, 10:15 AMMinimizableViewHandler