import SwiftUI
struct ContentView: View {
@State private var realViewSize = CGSize(width: 200, height: 200)
@State private var viewSize: CGSize = .zero
var body: some View {
VStack {
HStack {
Button("+") {
realViewSize.width += 10
realViewSize.height += 10
}
Button("-") {
realViewSize.width -= 10
realViewSize.height -= 10
}
}
Text("\(realViewSize.debugDescription)")
Text("\(viewSize.debugDescription)")
}
.frame(width: realViewSize.width, height: realViewSize.height)
.background(.blue.opacity(0.3))
.background() {
viewSizeGettger()
}
.padding()
}
@ViewBuilder
private func viewSizeGettger() -> some View {
GeometryReader { geometry in
Color.clear
.onAppear {
viewSize = geometry.size
}
}
}
}
#Preview {
ContentView()
}