dropShadow
fun Modifier.dropShadow(shape: Shape, shadow: Shadow): Modifier
Draws a drop shadow behind the rest of the content with the geometry specified by the given shape
and the shadow properties defined by the Shadow
. This is different than Modifier.shadow
as
this does not introduce a graphicsLayer to render elevation based shadows. This shadow is
rendered without a single light source and will render consistently regardless of the on screen
position of the content.
Parameters
shape | Geometry of the shadow |
shadow | Properties of the shadow like radius, spread, offset, and fill properties like the color or brush |
fun Modifier.dropShadow(shape: Shape, block: DropShadowScope.() -> Unit) =
this then BlockDropShadowElement(shape, block)
Draws a drop shadow behind the rest of the content with the geometry specified by the given shape
and the shadow properties defined the DropShadowScope
. This is different than Modifier.shadow
as this does not introduce a graphicsLayer to render elevation based shadows. This shadow is
rendered without a single light source and will render consistently regardless of the on screen
position of the content. This is similar to Modifier.dropShadow
except that specification of
drop shadow parameters is done with the lambda with DropShadowScope
allows for more efficient
transformations for animated use cases without recomposition.
Parameters
shape | Geometry of the shadow |
block | DropShadowScope block where shadow properties are defined |
Code Examples
DropShadowSample
@Composable
fun DropShadowSample() {
Box(Modifier.size(100.dp, 100.dp).dropShadow(RectangleShape, Shadow(12.dp)))
}