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

如何在Jetpack Glance的LazyColumn中添加HorizontalDivider?

Jetpack Glance 实现分割线的解决方案

明确说明:Jetpack Glance 并没有内置与 Compose 中 HorizontalDivider 完全对应的组件,你遇到的导入错误是因为 Glance 依赖的 Compose 子集不包含 Material3 的 HorizontalDivider。

想要在 Glance 小组件里实现分割线效果,可以参考以下两种方案:

方案一:通过 Box 自定义分割线

利用基础布局组件手动模拟分割线,代码示例:

LazyColumn {
    item {
        Text("列表第一项")
    }
    item {
        Box(
            modifier = GlanceModifier
                .fillMaxWidth()
                .height(2.dp)
                .background(Color.Gray)
        )
    }
    item {
        Text("列表第二项")
    }
}

通过调整 Box 的高度、背景色、边距等属性,可以灵活定制分割线样式,满足不同需求。

方案二:使用 Glance 内置的 Divider 组件(需对应版本)

在 Glance 1.0.0-beta01 及以上版本中,框架提供了基础的 Divider 组件,可直接使用:

import androidx.glance.layout.Divider

LazyColumn {
    item {
        Text("列表第一项")
    }
    item {
        Divider(
            modifier = GlanceModifier.fillMaxWidth(),
            color = Color.Gray,
            thickness = 2.dp
        )
    }
    item {
        Text("列表第二项")
    }
}

注意必须导入 androidx.glance.layout.Divider,而非 Material3 库中的组件。

额外提示

  • 确保你的 Glance 依赖版本达标,建议在 build.gradle 中使用最新稳定版:
dependencies {
    implementation "androidx.glance:glance-appwidget:1.0.0"
    implementation "androidx.glance:glance-material3:1.0.0"
}
  • Glance 是针对桌面小组件优化的轻量级 Compose 子集,很多 Material 组件并未直接内置,遇到此类情况时,优先考虑用基础布局组件自定义实现。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.11 17:42:34