Skip to content

Instantly share code, notes, and snippets.

@paulhimes
Last active March 9, 2021 02:03
Show Gist options
  • Save paulhimes/9ff5155d249fa8a71a1f440f375fbff2 to your computer and use it in GitHub Desktop.
Save paulhimes/9ff5155d249fa8a71a1f440f375fbff2 to your computer and use it in GitHub Desktop.
OnLayout Tutorial 04
struct MainView: View {
/// Controls the amount of padding above the scroll view's
/// content.
@State var titleBarHeight: CGFloat = 123
var body: some View {
ScrollView {
HStack {
Spacer()
Text("ScrollView Content")
.multilineTextAlignment(.center)
.foregroundColor(.white)
.background(Color.blue.brightness(0.2))
Spacer()
}
/// Pad the top of the content based on the value
/// of `titleBarHeight`.
.padding(.top, titleBarHeight)
}
.background(Color.blue)
.overlay(
TitleBar()
.background(
/// `proxy` will contain the size of the
/// title bar view.
GeometryReader { proxy in
}
),
alignment: .top
)
.edgesIgnoringSafeArea(.all)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment