← 返回 iOS 词条

层叠顺序

iOS原生支持

在 iOS 上叫zIndex

也叫 zIndex(_:)

SwiftUI: View.zIndex(_:)

官方描述是「控制重叠视图的显示顺序」,参数说明是「这个视图相对的前后次序,默认为 0」。没有「必须先定位」这类前置条件,任何视图都能直接用。

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

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

其他平台的相似实现

Web原生支持
z-index同名

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

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

官方描述是「创建一个修饰符,控制同一个布局父级下子元素的绘制顺序」。

看 Android 视角 →

使用规范

什么时候用

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

什么时候别用

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

容易混淆

iOS 出处

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