SwiftUIのビューを透過させるには、不透明度を設定するopacityモディファイアを利用する。
今回はサンプルとして、Imageビューの不透明度をSliderで調整するコードを紹介する。
struct ContentView: View { @State var opacity = 1.0 var body: some View { VStack { Image("pasta") .resizable() .scaledToFit() .opacity(opacity) VStack(alignment: .leading) { Text("不透明度: \(opacity)") Slider(value: $opacity, in: 0...1) } } } }
画像は何を使っても良いが、今回はパスタの画像を用意した。
そのまま使うと画像サイズの問題で、画面からはみ出てしまうため、resizableで画像サイズを調整。さらに縦横比が崩れないように、scaledToFitも合わせて使っている。
Sliderにはopacity状態変数をバインドさせておき、スライダーの動きに合わせてリアルタイムでビューに値が反映されるようにしている。
このサンプルアプリを実行してみる。



スライダーの動きに合わせて、画像の透明度が変化していることが分かる。