🎨
SwiftUIで背景色を設定したいとき(iOS 15以降)
背景色を設定したいがググると色々出るねという話
ググると色々な記事が出てきてしまうしAIがそれを学習してしまっている。
backgroundメソッドをまず試そう
2024年すぎてたら、たいていiOS15以降だと思うので下記を試してほしい
@inlinable public func background<S>(
_ style: S,
ignoresSafeAreaEdges edges: Edge.Set = .all
) -> some View where S : ShapeStyle
ignoreSafeAreaEdgesもデフォルトで.allとなっているので使いやすし!
メソッドの利用例
CustomCameraView(store: store)
.background(.black)
なんで引数がShapeStyleなのにColorを設定できるの?
SwiftUI.ColorはShapreStyleに準拠してるから
@available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
extension Color : ShapeStyle {
}
他のやり方
- ZStack
- Z軸の下に色
- Color.overlay
- 色の上に部品
Discussion