In this answer I got wrong ripple animation. Do you know how to create ripple with rounded corners using Jetpack Compose?
With default ripple I have this:
Code:
Card(shape = RoundedCornerShape(30.dp),
border = BorderStroke(width = 2.dp, color = buttonColor(LocalContext.current)),
backgroundColor = backColor(LocalContext.current),
modifier = Modifier
.fillMaxWidth()
.padding(10.dp)
.clickable(
interactionSource = remember { MutableInteractionSource() },
indication = rememberRipple(radius = 30.dp)
) { show = !show }
) { ... } //Show is animation of other element.
//If I put radius of ripple 200 dp(it's a height of card) ripple works not normal.
Starting with M2
1.0.0-beta08
you can solve this issue using theonClick
lambda parameter in theCard
instead of theclickable
modifier:If you need the
clickable
or thecombinedClickable
modifier you have to use the variant without theonClick
parameter and to apply also theclip
modifier to theCard
using the sameCard
shape:With M3
Card
you can do the same.Until
1.0.0-beta07
applying a.clickable
modifier to theCard
the ripples aren't clipped by the bounds of the layout.As workaround you can apply the
.clickable
modifier to the content of the Card (for example aBox
):