You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Jetpack Compose的Box Composable实现指定叠加布局?

要实现小Box叠在大Box的顶部边缘上方,直接把offset里的y参数改成负值就行,比如y = -40.dp。

你之前设置y=40.dp是让小Box向下偏移,所以会跨在大Box的边缘上;改成负值后,小Box会向上偏移,刚好叠在大Box的顶部边缘上方。

修正后的代码如下:

Box {
    Card(
        modifier = Modifier
            .fillMaxWidth()
            .height(300.dp)
    ) {
        // 大Card的内容区域
    }
    Box(
        modifier = Modifier
            .width(100.dp)
            .height(100.dp)
            .background(Color.Blue)
            .align(Alignment.TopStart)
            .offset(x = 0.dp, y = -40.dp) // 此处将y值改为负值
    ) {
        // 小Box的内容区域
    }
}

如果需要调整小Box的位置,只需修改offset的x和y参数即可,负值对应向上/向左偏移,正值对应向下/向右偏移。

内容的提问来源于stack exchange,提问作者Himanshu Arya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 12:23:11