相关疑难解决方法(0)

在 Jetpack Compose 中从另一种形状切割出一种形状

我对在 Compose 中制作此视图有疑问,但我不知道如何实现它。

看法

我当前的代码如下所示:

Box(
    modifier = Modifier
        .fillMaxSize()
        .height(300.dp)
) {
    Canvas(modifier = Modifier.matchParentSize()) {
        drawRoundRect(
            color = Color.Yellow,
            cornerRadius = CornerRadius(16.dp.toPx(), 16.dp.toPx())
        )
        drawRoundRect(
            color = Color.White,
            topLeft = Offset(
                x = size.width / 5,
                y = size.height - 60.dp.toPx()
            ),
            size = Size((size.width / 5) * 3, 50.dp.toPx() * 2),
            cornerRadius = CornerRadius(24.dp.toPx(), 24.dp.toPx()),
        )
    }

    Box(
        modifier = Modifier
            .fillMaxSize()
            .padding(16.dp)
    ) {
        Text(
            text = "Test",
            modifier = Modifier.align(Alignment.BottomCenter)
        )
    }
}
Run Code Online (Sandbox Code Playgroud)

结果如下:

我的看法

kotlin android-jetpack-compose android-jetpack-compose-canvas

4
推荐指数
1
解决办法
2769
查看次数