gpt4 book ai didi

android - Jetpack Compose 创建带有箭头和边框/高度的聊天气泡

转载 作者:行者123 更新时间:2023-12-04 08:10:55 28 4
gpt4 key购买 nike

我怎样才能创建一个像电报或whatsapp这样的聊天气泡,在图像的左侧或右侧有高程和箭头?

enter image description here

最佳答案

您可以定义您的自定义Shape

例如,您可以使用以下方法定义三角形:

class TriangleEdgeShape(val offset: Int) : Shape {

override fun createOutline(
size: Size,
layoutDirection: LayoutDirection,
density: Density
): Outline {
val trianglePath = Path().apply {
moveTo(x = 0f, y = size.height-offset)
lineTo(x = 0f, y = size.height)
lineTo(x = 0f + offset, y = size.height)
}
return Outline.Generic(path = trianglePath)
}
}

您还可以扩展RoundedCornerShape,在右下角添加小三角形。

然后你可以定义如下:

Row(Modifier.height(IntrinsicSize.Max)) {
Column(
modifier = Modifier.background(
color = Color.xxx,
shape = RoundedCornerShape(4.dp,4.dp,0.dp,4.dp)
).width(xxxx)
) {
Text("Chat")
}
Column(
modifier = Modifier.background(
color = Color.xxx,
shape = TriangleEdgeShape(10))
.width(8.dp)
.fillMaxHeight()
){
}

enter image description here

关于android - Jetpack Compose 创建带有箭头和边框/高度的聊天气泡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65965852/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com