Mercurial > public > lazybear
diff LazyBear/Tests/MainViewTest.swift @ 430:c78d5b5b3bda
Minor updates
author | Dennis Concepción Martín <66180929+denniscm190@users.noreply.github.com> |
---|---|
date | Sat, 19 Jun 2021 16:21:26 +0200 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/LazyBear/Tests/MainViewTest.swift Sat Jun 19 16:21:26 2021 +0200 @@ -0,0 +1,54 @@ +// +// MainViewTest.swift +// LazyBear +// +// Created by Dennis Concepción Martín on 18/6/21. +// + +import SwiftUI + +class SheetManagement: ObservableObject { + @Published var showDetailView = false + @Published var showSubDetailview = false +} + +struct MainViewTest: View { + @StateObject var sheetManagement = SheetManagement() + + var body: some View { + VStack { + Text("Main View") + Button("Show Sheet", action: { sheetManagement.showDetailView = true }) + } + .sheet(isPresented: $sheetManagement.showDetailView) { + DetailViewTest() + .environmentObject(sheetManagement) + } + } +} + +struct DetailViewTest: View { + @EnvironmentObject var sheetManagement: SheetManagement + + var body: some View { + VStack { + Text("Detail View") + Button("Show Sub Detail View", action: { sheetManagement.showSubDetailview = true }) + } + .sheet(isPresented: $sheetManagement.showSubDetailview) { + SubDetailViewTest() + .environmentObject(sheetManagement) + } + } +} + +struct SubDetailViewTest: View { + @EnvironmentObject var sheetManagement: SheetManagement + + var body: some View { + VStack { + Text("Sub Detail View") + Button("Hide everything", action: { sheetManagement.showDetailView = false; sheetManagement.showSubDetailview = false }) + } + } +}