diff --git a/BikeView.swift b/BikeView.swift index 72e9247..56cff5c 100644 --- a/BikeView.swift +++ b/BikeView.swift @@ -3,7 +3,7 @@ import SwiftUI -struct BikeView: View { +struct BikeView: TabContent { static var title = "Bike" static var image = "bicycle" diff --git a/ContentView.swift b/ContentView.swift index 885f288..d361aa2 100644 --- a/ContentView.swift +++ b/ContentView.swift @@ -16,13 +16,13 @@ enum TabLabel: String { "hand.draw.fill" } } } -// -//func tab(_ contentType: C.Type) -//-> Tab { -// Tab(C.title, systemImage: C.image) { -// C() -// } -//} + +func tab(_ contentType: C.Type) +-> Tab { + Tab(C.title, systemImage: C.image) { + C() + } +} @@ -38,6 +38,12 @@ struct ContentView: View { Tab("drücken", systemImage: TabLabel.cars.image) { SwapperView() } + tab(ListView.self) + tab(CountView.self) + tab(BikeView.self) + tab(TrainView.self) + tab(SwapperView.self) + tab(PaddingView.self) } } } diff --git a/CountView.swift b/CountView.swift index e906df0..e504f50 100644 --- a/CountView.swift +++ b/CountView.swift @@ -7,7 +7,7 @@ import SwiftUI -struct CountView: View, TabContent { +struct CountView: TabContent { static var title = "Count" static var image = "42.circle" diff --git a/ListView.swift b/ListView.swift index 88a0be6..5f427ca 100644 --- a/ListView.swift +++ b/ListView.swift @@ -10,7 +10,7 @@ import SwiftUI //import Playgrounds import Foundation -struct ListView: View , TabContent{ +struct ListView: TabContent{ static var title = "List" static var image = "list.bullet" diff --git a/Models.swift b/Models.swift index 235eb3b..24c5a49 100644 --- a/Models.swift +++ b/Models.swift @@ -7,13 +7,8 @@ protocol Vehicle { var color: Color { get set } } -protocol TabContent { - init() //title: String, image: String) - -// <#statements#> -// } - - +protocol TabContent: View { + init() static var title: String { get } static var image: String { get } } diff --git a/PaddingView.swift b/PaddingView.swift index 70673e5..7ef84de 100644 --- a/PaddingView.swift +++ b/PaddingView.swift @@ -1,11 +1,21 @@ import SwiftUI -struct PaddingView: View { +struct PaddingView: TabContent { + static var title = "Padding" + static var image = "pad.header" + var body: some View { - Text("Hello, World!") + Color.black .padding() + .background(.green) + .padding() + .background(.blue) + .padding() + .background(.red) + .frame(width: 380, height: 380) } } + #Preview { PaddingView() } diff --git a/SwapperView.swift b/SwapperView.swift index 0d769a4..10f2723 100644 --- a/SwapperView.swift +++ b/SwapperView.swift @@ -1,6 +1,6 @@ import SwiftUI -struct SwapperView: View{ +struct SwapperView: TabContent { static var title = "Swap" static var image = "rectangle.2.swap" diff --git a/TheSwiftWeek.xcodeproj/project.xcworkspace/xcuserdata/rohing73.xcuserdatad/UserInterfaceState.xcuserstate b/TheSwiftWeek.xcodeproj/project.xcworkspace/xcuserdata/rohing73.xcuserdatad/UserInterfaceState.xcuserstate index 8de98bd..ddf4887 100644 Binary files a/TheSwiftWeek.xcodeproj/project.xcworkspace/xcuserdata/rohing73.xcuserdatad/UserInterfaceState.xcuserstate and b/TheSwiftWeek.xcodeproj/project.xcworkspace/xcuserdata/rohing73.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/TrainView.swift b/TrainView.swift index 8b90d6d..aeab772 100644 --- a/TrainView.swift +++ b/TrainView.swift @@ -3,7 +3,7 @@ import SwiftUI -struct TrainView: View , TabContent { +struct TrainView: TabContent { static var title = "Train" static var image = "train.side.front.car"