← 返回 Android 词条

层叠顺序

Android原生支持

在 Android 上叫zIndex

也叫 Modifier.zIndex

Compose: Modifier.zIndex(zIndex)

官方描述是「创建一个修饰符,控制同一个布局父级下子元素的绘制顺序」。作用域被写进了定义:它只在兄弟之间排序,跨父级不比较 —— 这与 Web 的层叠上下文规则和 iOS 的无前置条件都不一样。

两个元素在屏幕上重叠时,决定谁画在上面、谁被盖在下面的先后次序。

  • 被别的东西盖住了
  • 让它显示在最上面
  • 浮层跑到下面去了
  • 层叠顺序
  • 堆叠次序
  • 绘制顺序

其他平台的相似实现

Web原生支持
z-index同名

官方定义是「设置一个已定位元素及其后代、或弹性与网格项的 z 轴次序」。

看 Web 视角 →
iOS原生支持
zIndex同名

官方描述是「控制重叠视图的显示顺序」,参数说明是「这个视图相对的前后次序,默认为 0」。

看 iOS 视角 →

使用规范

什么时候用

  • 浮层、气泡、吸顶栏需要压在正常内容之上时
  • 两个重叠元素的先后关系不能靠书写顺序保证时

什么时候别用

  • 靠不断加大数值来压过别人时 —— 那说明层级关系本身没理清
  • 元素并不重叠,只是排布先后 → 那是布局顺序,不是层叠顺序

容易混淆

Android 出处

查看 Web / iOS / Android 完整对照 →