SwiftUI/ZStackだけでなく、VStackやHStackも子要素の宣言位置が低いほど重なりが手前になる
環境
code:sh
$xcodebuild -version
Xcode 15.0.1
Build version 15A507
スクリーンショットは iOS 17.0.1 上のプレビュー
モチベーション
PRで教えてもらったのでメモ
/icons/hr.icon
code:swift
VStack {
Rectangle()
.fill(Color.yellow)
.frame(width: 100, height: 100, alignment: .center)
.zIndex(1) // A
Rectangle()
.fill(Color.red)
.frame(width: 100, height: 100, alignment: .center)
.rotationEffect(.degrees(45))
}
A(.zIndex(1)) なし/あり
https://scrapbox.io/files/6551fcc44f8bc2001bef2ed3.pnghttps://scrapbox.io/files/6551fcd31f65c6001ba57c39.png
HStackも同様で、宣言位置が後になるほど重なりは手前になる
.zIndex(1) なし / あり
https://scrapbox.io/files/6551fd60b7a27a001c9217f5.pnghttps://scrapbox.io/files/6551fd6a255d4a001bd80480.png